summaryrefslogtreecommitdiff
path: root/gcc/cpplib.h
diff options
context:
space:
mode:
authorNeil Booth <neil@daikokuya.demon.co.uk>2002-02-02 18:56:37 +0000
committerNeil Booth <neil@gcc.gnu.org>2002-02-02 18:56:37 +0000
commit0fef3fd0eada944c2677ba0680393a12979f970f (patch)
tree955327bc9f9ac1f86814b649a8e7be4427abe84a /gcc/cpplib.h
parent1acce4c771ff585069a1551fe1a6d0bf70fdda52 (diff)
downloadgcc-0fef3fd0eada944c2677ba0680393a12979f970f.tar.gz
cpphash.h (struct spec_nodes): Remove n__CHAR_UNSIGNED__.
* cpphash.h (struct spec_nodes): Remove n__CHAR_UNSIGNED__. * cpphash.c (_cpp_init_hashtable): Similarly. * cppinit.c (cpp_create_reader): Default the signed_char flag. (init_builtins): Define __CHAR_UNSIGNED__ appropriately. (COMMAND_LINE_OPTIONS): Recognise -f{un,}signed-char. (cpp_handle_option): Handle the new options. * cpplex.c (cpp_interpret_charconst): Use new flag. * cpplib.h (struct cpp_options): New member signed_char. * gcc.c (cpp_unique_options): Remove %c spec and documentation. (cpp_options): Handle -fsigned-char and -funsigned-char. (static_specs): Remove signed_char_spec. (do_spec1): Don't handle %c. * system.h: Poison SIGNED_CHAR_SPEC. * tradcif.y (yylex): Use flag_signed_char. * tradcpp.h (flag_signed_char): New. * tradcpp.c (flag_signed_char): New. (main): Handle new command-line options. (initialize_builtins): Define __CHAR_UNSIGNED__ if appropriate. config: * alpha/alpha.h (SIGNED_CHAR_SPEC): Remove. * avr/avr.h: Remove old comments. * i960/i960.h (CPP_SPEC): Pass -fsigned-char if -mic*. (CC1_SPEC): Pass -fsigned-char if -mic*. (SIGNED_CHAR_SPEC): Remove. doc: * tm.texi (SIGNED_CHAR_SPEC): Remove documentation. testsuite: * gcc.dg/cpp/uchar-1.c, uchar-2.c, uchar-3.c: New tests. From-SVN: r49444
Diffstat (limited to 'gcc/cpplib.h')
-rw-r--r--gcc/cpplib.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/cpplib.h b/gcc/cpplib.h
index eeeecc0e3ae..47169dcf27d 100644
--- a/gcc/cpplib.h
+++ b/gcc/cpplib.h
@@ -240,6 +240,9 @@ struct cpp_options
/* Non-0 means -v, so print the full set of include dirs. */
unsigned char verbose;
+ /* Nonzero means chars are signed. */
+ unsigned char signed_char;
+
/* Nonzero means use extra default include directories for C++. */
unsigned char cplusplus;