projects
/
cparser
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Simplify macro mumbo jumbo.
[cparser]
/
main.c
diff --git
a/main.c
b/main.c
index
4b51df5
..
6e55b36
100644
(file)
--- a/
main.c
+++ b/
main.c
@@
-512,7
+512,8
@@
static void usage(const char *argv0)
fprintf(stderr, "Usage %s input [-o output] [-c]\n", argv0);
}
fprintf(stderr, "Usage %s input [-o output] [-c]\n", argv0);
}
-static void print_cparser_version(void) {
+static void print_cparser_version(void)
+{
printf("cparser (%s) using libFirm (%u.%u",
cparser_REVISION, ir_get_version_major(),
ir_get_version_minor());
printf("cparser (%s) using libFirm (%u.%u",
cparser_REVISION, ir_get_version_major(),
ir_get_version_minor());
@@
-838,21
+839,21
@@
int main(int argc, char **argv)
opt += 3;
}
opt += 3;
}
- if (streq(opt, "dollars-in-identifiers")) {
- allow_dollar_in_symbol = truth_value;
- } if (streq(opt, "builtins")) {
+ if (streq(opt, "builtins")) {
use_builtins = truth_value;
use_builtins = truth_value;
+ } else if (streq(opt, "dollars-in-identifiers")) {
+ allow_dollar_in_symbol = truth_value;
+ } else if (streq(opt, "omit-frame-pointer")) {
+ set_be_option(truth_value ? "omitfp" : "omitfp=no");
} else if (streq(opt, "short-wchar")) {
wchar_atomic_kind = truth_value ? ATOMIC_TYPE_USHORT
: ATOMIC_TYPE_INT;
} else if (streq(opt, "signed-char")) {
char_is_signed = truth_value;
} else if (streq(opt, "short-wchar")) {
wchar_atomic_kind = truth_value ? ATOMIC_TYPE_USHORT
: ATOMIC_TYPE_INT;
} else if (streq(opt, "signed-char")) {
char_is_signed = truth_value;
- } else if (streq(opt, "syntax-only")) {
- mode = truth_value ? ParseOnly : CompileAssembleLink;
- } else if (streq(opt, "omit-frame-pointer")) {
- set_be_option(truth_value ? "omitfp" : "omitfp=no");
} else if (streq(opt, "strength-reduce")) {
firm_option(truth_value ? "strength-red" : "no-strength-red");
} else if (streq(opt, "strength-reduce")) {
firm_option(truth_value ? "strength-red" : "no-strength-red");
+ } else if (streq(opt, "syntax-only")) {
+ mode = truth_value ? ParseOnly : CompileAssembleLink;
} else if (streq(opt, "unsigned-char")) {
char_is_signed = !truth_value;
} else if (streq(opt, "fast-math") ||
} else if (streq(opt, "unsigned-char")) {
char_is_signed = !truth_value;
} else if (streq(opt, "fast-math") ||
@@
-1128,6
+1129,10
@@
int main(int argc, char **argv)
/* we do the lowering in ast2firm */
firm_opt.lower_bitfields = FALSE;
/* we do the lowering in ast2firm */
firm_opt.lower_bitfields = FALSE;
+ /* set the c_mode here, types depends on it */
+ c_mode |= features_on;
+ c_mode &= ~features_off;
+
gen_firm_init();
init_symbol_table();
init_types();
gen_firm_init();
init_symbol_table();
init_types();
@@
-1312,6
+1317,7
@@
default_cxx_warn:
do_parsing:
c_mode |= features_on;
c_mode &= ~features_off;
do_parsing:
c_mode |= features_on;
c_mode &= ~features_off;
+
init_tokens();
translation_unit_t *const unit = do_parsing(in, filename);
init_tokens();
translation_unit_t *const unit = do_parsing(in, filename);