lex.c (real_yylex): Refer to __complex instead of complex.
* lex.c (real_yylex): Refer to __complex instead of complex. -Wed Jul 16 15:57:42 1997 Benjamin Kosnik <bkoz@rhino.cygnus.com> - - * parse.y (empty_parms): Only use VOID_LIST_NODE for the PARMS if - we're in a C++ struct/class, not if we're doing xtern "C"'. - and regenerate parse.c. From-SVN: r14885
This commit is contained in:
parent
b4f32d7b12
commit
8eeda2ecd5
5 changed files with 3765 additions and 3716 deletions
|
@ -1,3 +1,7 @@
|
|||
Thu Aug 21 18:48:44 1997 Jason Merrill <jason@yorick.cygnus.com>
|
||||
|
||||
* lex.c (real_yylex): Refer to __complex instead of complex.
|
||||
|
||||
Thu Aug 21 22:25:46 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
|
||||
|
||||
* lex.c (real_yylex): Don't use getc directly.
|
||||
|
@ -200,11 +204,6 @@ Wed Jul 16 23:47:08 1997 Jason Merrill <jason@yorick.cygnus.com>
|
|||
* lex.c (do_scoped_id): convert_from_reference.
|
||||
* init.c (build_offset_ref): Likewise.
|
||||
|
||||
Wed Jul 16 15:57:42 1997 Benjamin Kosnik <bkoz@rhino.cygnus.com>
|
||||
|
||||
* parse.y (empty_parms): Only use VOID_LIST_NODE for the PARMS if
|
||||
we're in a C++ struct/class, not if we're doing `extern "C"'.
|
||||
|
||||
Wed Jul 16 12:34:29 1997 Benjamin Kosnik <bkoz@lisa.cygnus.com>
|
||||
|
||||
* error.c (dump_expr): Check TREE_OPERAND before dump_expr_list.
|
||||
|
@ -526,8 +525,7 @@ Tue May 20 13:55:57 1997 Brendan Kehoe <brendan@lisa.cygnus.com>
|
|||
* hash.h: Regenerate.
|
||||
* lex.h (rid): Add RID_COMPLEX.
|
||||
(RID_LAST_MODIFIER): Set to RID_COMPLEX.
|
||||
* lex.c (init_lex): Add building of RID_COMPLEX. Unset reserved
|
||||
word "complex" if -fno-gnu-keywords.
|
||||
* lex.c (init_lex): Add building of RID_COMPLEX.
|
||||
(real_yylex): General cleanup in line with what c-lex.c also has,
|
||||
sans the cruft for traditional; add handling of SPEC_IMAG, complex
|
||||
types, and imaginary numeric constants.
|
||||
|
|
14
gcc/cp/NEWS
14
gcc/cp/NEWS
|
@ -7,8 +7,20 @@
|
|||
|
||||
for more information.
|
||||
|
||||
* New flags -Wsign-promo, -Wno-pmf-conversion.
|
||||
|
||||
* local static variables in extern inline functions will be shared between
|
||||
translation units.
|
||||
|
||||
* Standard usage syntax for the std namespace is supported; std is treated
|
||||
as an alias for global scope. General namespaces are still not supported.
|
||||
|
||||
* -fvtable-thunks is supported for all targets, and is the default for
|
||||
Linux with glibc (libc 6 on x86).
|
||||
|
||||
* Default function arguments in templates will not be evaluated (or
|
||||
checked for semantic validity) unless they are needed.
|
||||
checked for semantic validity) unless they are needed. Default arguments
|
||||
in class bodies will not be parsed until the class definition is complete.
|
||||
|
||||
* The -ftemplate-depth-NN flag can be used to increase the maximum
|
||||
recursive template instantiation depth, defaulting to 17. If you need
|
||||
|
|
|
@ -663,7 +663,7 @@ init_lex ()
|
|||
ridpointers[(int) RID_REGISTER] = get_identifier ("register");
|
||||
SET_IDENTIFIER_AS_LIST (ridpointers[(int) RID_REGISTER],
|
||||
build_tree_list (NULL_TREE, ridpointers[(int) RID_REGISTER]));
|
||||
ridpointers[(int) RID_COMPLEX] = get_identifier ("complex");
|
||||
ridpointers[(int) RID_COMPLEX] = get_identifier ("__complex");
|
||||
SET_IDENTIFIER_AS_LIST (ridpointers[(int) RID_COMPLEX],
|
||||
build_tree_list (NULL_TREE, ridpointers[(int) RID_COMPLEX]));
|
||||
|
||||
|
@ -833,8 +833,6 @@ init_lex ()
|
|||
UNSET_RESERVED_WORD ("signature");
|
||||
UNSET_RESERVED_WORD ("sigof");
|
||||
}
|
||||
if (flag_no_gnu_keywords)
|
||||
UNSET_RESERVED_WORD ("complex");
|
||||
if (flag_no_asm || flag_no_gnu_keywords)
|
||||
UNSET_RESERVED_WORD ("typeof");
|
||||
if (! flag_operator_names)
|
||||
|
@ -3843,7 +3841,7 @@ real_yylex ()
|
|||
cp_convert (integer_type_node,
|
||||
yylval.ttype));
|
||||
else
|
||||
error ("complex integer constant is too wide for `complex int'");
|
||||
error ("complex integer constant is too wide for `__complex int'");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
7444
gcc/cp/parse.c
7444
gcc/cp/parse.c
File diff suppressed because it is too large
Load diff
|
@ -88,10 +88,7 @@ empty_parms ()
|
|||
tree parms;
|
||||
|
||||
if (strict_prototype
|
||||
/* Only go ahead with using the void list node if we're actually
|
||||
parsing a class in C++, not a struct in extern "C" mode. */
|
||||
|| (current_class_type != NULL
|
||||
&& current_lang_name == lang_name_cplusplus))
|
||||
|| current_class_type != NULL)
|
||||
parms = void_list_node;
|
||||
else
|
||||
parms = NULL_TREE;
|
||||
|
|
Loading…
Add table
Reference in a new issue