From: Dale Weiler Date: Thu, 13 Jun 2013 22:23:07 +0000 (+0000) Subject: Revert "Actually works now" X-Git-Tag: v0.3.0~139 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=17fd017d6fde0af0b69a9b9d1367bb3e00f7a865;p=xonotic%2Fgmqcc.git Revert "Actually works now" This reverts commit daa1487aefbb31359c532a19e01819f0d00f6716. --- diff --git a/gmqcc.h b/gmqcc.h index dc69104..d6055db 100644 --- a/gmqcc.h +++ b/gmqcc.h @@ -1129,7 +1129,6 @@ typedef enum { COMPILER_QCC, /* circa QuakeC */ COMPILER_FTEQCC, /* fteqcc QuakeC */ COMPILER_QCCX, /* qccx QuakeC */ - COMPILER_HCODE, /* hcode QuakeC */ COMPILER_GMQCC /* this QuakeC */ } opts_std_t; diff --git a/main.c b/main.c index ce3025a..37638e9 100644 --- a/main.c +++ b/main.c @@ -74,7 +74,6 @@ static int usage(void) { con_out(" -std=standard select one of the following standards\n" " -std=qcc original QuakeC\n" " -std=fteqcc fteqcc QuakeC\n" - " -std=hcode hexgen2 QuakeC\n" " -std=gmqcc this compiler (default)\n"); con_out(" -f enable a flag\n" " -fno- disable a flag\n" @@ -205,12 +204,6 @@ static bool options_parse(int argc, char **argv) { opts_set(opts.flags, ADJUST_VECTOR_FIELDS, false); OPTS_OPTION_U32(OPTION_STANDARD) = COMPILER_QCCX; - } else if (!strcmp(argarg, "hcode")) { - - opts_set(opts.flags, ADJUST_VECTOR_FIELDS, false); - opts_set(opts.flags, ASSIGN_FUNCTION_TYPES, true); - - OPTS_OPTION_U32(OPTION_STANDARD) = COMPILER_HCODE; } else { con_out("Unknown standard: %s\n", argarg); return false; diff --git a/parser.c b/parser.c index 06aca6b..5b4ed65 100644 --- a/parser.c +++ b/parser.c @@ -5770,29 +5770,22 @@ skipvar: } } - if ((OPTS_OPTION_U32(OPTION_STANDARD) == COMPILER_HCODE) - ? parser->tok != ':' - : true - ){ - if (parser->tok != '{' || var->expression.vtype != TYPE_FUNCTION) { - if (parser->tok != '=') { - parseerror(parser, "missing semicolon or initializer, got: `%s`", parser_tokval(parser)); - break; - } - - if (!parser_next(parser)) { - parseerror(parser, "error parsing initializer"); - break; - } + if (parser->tok != '{' || var->expression.vtype != TYPE_FUNCTION) { + if (parser->tok != '=') { + parseerror(parser, "missing semicolon or initializer, got: `%s`", parser_tokval(parser)); + break; } - else if (OPTS_OPTION_U32(OPTION_STANDARD) == COMPILER_QCC) { - parseerror(parser, "expected '=' before function body in this standard"); + + if (!parser_next(parser)) { + parseerror(parser, "error parsing initializer"); + break; } } + else if (OPTS_OPTION_U32(OPTION_STANDARD) == COMPILER_QCC) { + parseerror(parser, "expected '=' before function body in this standard"); + } - if (parser->tok == '#' || - (OPTS_OPTION_U32(OPTION_STANDARD) == COMPILER_HCODE && parser->tok == ':')) - { + if (parser->tok == '#') { ast_function *func = NULL; ast_value *number = NULL; float fractional;