diff options
author | Neil Booth <neil@daikokuya.co.uk> | 2002-07-09 22:21:37 +0000 |
---|---|---|
committer | Neil Booth <neil@gcc.gnu.org> | 2002-07-09 22:21:37 +0000 |
commit | cd98faa13814ce3712fc1c1be9690180d89810e5 (patch) | |
tree | e390f035173a9fd06a813df8aaf84b4cafa2f92f /gcc/cppexp.c | |
parent | 2ad65b0e91312a9f2fadd4abd9eb9d98b085920c (diff) | |
download | gcc-cd98faa13814ce3712fc1c1be9690180d89810e5.zip gcc-cd98faa13814ce3712fc1c1be9690180d89810e5.tar.gz gcc-cd98faa13814ce3712fc1c1be9690180d89810e5.tar.bz2 |
cpperror.c (cpp_error): Default to directive_line within directives here.
* cpperror.c (cpp_error): Default to directive_line within
directives here.
* cppexp.c (cpp_interpret_integer): Only use traditional
number semantics in directives.
* cpplib.c (prepare_directive_trad): Don't reset pfile->line.
(do_include_common): Similarly.
* cpptrad.c (scan_out_logical_line): Implement accurate
quoting of <> in #include.
* doc/cpp.texi: Update.
From-SVN: r55347
Diffstat (limited to 'gcc/cppexp.c')
-rw-r--r-- | gcc/cppexp.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/cppexp.c b/gcc/cppexp.c index b3a7ce6..44ee26b 100644 --- a/gcc/cppexp.c +++ b/gcc/cppexp.c @@ -377,9 +377,11 @@ cpp_interpret_integer (pfile, token, type) "integer constant is too large for its type"); /* If too big to be signed, consider it unsigned. Only warn for decimal numbers. Traditional numbers were always signed (but - we still honour an explicit U suffix). */ + we still honour an explicit U suffix); but we only have + traditional semantics in directives. */ else if (!result.unsignedp - && !CPP_OPTION (pfile, traditional) + && !(CPP_OPTION (pfile, traditional) + && pfile->state.in_directive) && !num_positive (result, precision)) { if (base == 10) |