ba89d661ac
* cpplex.c (parse_name): Might have to glue a CPP_OTHER token before the name. (lex_line): Glue @ onto the beginning of identifiers and string constants, in Objective-C mode. (output_token, spell_token): Handle CPP_OSTRING. (can_paste, maybe_paste_with_next): Handle pasting @ onto the beginning of a NAME or a STRING, in objc mode. * cpplib.c (get_define_node): Do not permit identifiers that begin with @ to be #defined. * cppmacro.c (CAN_PASTE_AFTER): Add CPP_OTHER. * cpplib.h (TTYPE_TABLE): Add CPP_OSTRING. * c-lang.c, objc/objc-act.c (build_objc_string): Delete. * c-tree.h (build_objc_string): Delete prototype. * objc/objc-tree.def: Delete OBJC_STRING_CST. * c-lex.c (yylex): Use build_string for all three kinds of strings. * gcc.dg/cpp/20000625-2.c: Don't expect a warning on line 4. From-SVN: r35470
35 lines
1.5 KiB
Modula-2
35 lines
1.5 KiB
Modula-2
/* This file contains the definitions and documentation for the
|
|
additional tree codes used in the Objective C front end (see tree.def
|
|
for the standard codes).
|
|
Copyright (C) 1990, 1997 Free Software Foundation, Inc.
|
|
|
|
This file is part of GNU CC.
|
|
|
|
GNU CC is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; either version 2, or (at your option)
|
|
any later version.
|
|
|
|
GNU CC is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with GNU CC; see the file COPYING. If not, write to
|
|
the Free Software Foundation, 59 Temple Place - Suite 330,
|
|
Boston, MA 02111-1307, USA. */
|
|
|
|
|
|
/* Objective-C types. */
|
|
DEFTREECODE (CLASS_INTERFACE_TYPE, "class_interface_type", 't', 0)
|
|
DEFTREECODE (CLASS_IMPLEMENTATION_TYPE, "class_implementation_type", 't', 0)
|
|
DEFTREECODE (CATEGORY_INTERFACE_TYPE, "category_interface_type", 't', 0)
|
|
DEFTREECODE (CATEGORY_IMPLEMENTATION_TYPE,"category_implementation_type",'t',0)
|
|
DEFTREECODE (PROTOCOL_INTERFACE_TYPE, "protocol_interface_type", 't', 0)
|
|
|
|
/* Objective-C decls. */
|
|
DEFTREECODE (KEYWORD_DECL, "keyword_decl", 'd', 0)
|
|
DEFTREECODE (INSTANCE_METHOD_DECL, "instance_method_decl", 'd', 0)
|
|
DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", 'd', 0)
|