From 5213d6c9b07e81ee5d774e8419ee21864f0f471f Mon Sep 17 00:00:00 2001 From: mpolacek Date: Wed, 24 Sep 2014 17:23:56 +0000 Subject: PR c/61405 PR c/53874 gcc/ * asan.c (maybe_instrument_call): Add default case. * ipa-pure-const.c (special_builtin_state): Likewise. * predict.c (expr_expected_value_1): Likewise. * lto-streamer-out.c (write_symbol): Initialize variable. gcc/c-family/ * c-common.h (struct c_common_resword): Don't define CPP_KEYWORD. gcc/c/ * c-parser.c: Don't define CPP_KEYWORD. (c_parser_switch_statement): Pass original type to c_finish_case. * c-tree.h (c_finish_case): Update declaration. * c-typeck.c (c_finish_case): Add TYPE parameter. Pass it conditionally to c_do_switch_warnings. gcc/cp/ * semantics.c (finish_switch_cond): Call unlowered_expr_type. * tree.c (bot_manip): Add default case. * parser.c (cp_parser_primary_expression): Cast the controlling expression of a switch to an int. (cp_parser_unqualified_id): Likewise. gcc/testsuite/ * c-c++-common/pr53874.c: New test. * c-c++-common/pr61405.c: New test. libcpp/ * include/cpplib.h (enum cpp_ttype): Define CPP_KEYWORD. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215559 138bc75d-0d04-0410-961f-82ee72b054a4 --- libcpp/ChangeLog | 6 ++++++ libcpp/include/cpplib.h | 3 +++ 2 files changed, 9 insertions(+) (limited to 'libcpp') diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index a1c117a02bf..463bb60e761 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,9 @@ +2014-09-24 Marek Polacek + + PR c/61405 + PR c/53874 + * include/cpplib.h (enum cpp_ttype): Define CPP_KEYWORD. + 2014-09-17 Jan Hubicka * charset.c (conversion): Rename to ... diff --git a/libcpp/include/cpplib.h b/libcpp/include/cpplib.h index 62d271be41c..06d18d49ca7 100644 --- a/libcpp/include/cpplib.h +++ b/libcpp/include/cpplib.h @@ -153,6 +153,9 @@ enum cpp_ttype TTYPE_TABLE N_TTYPES, + /* A token type for keywords, as opposed to ordinary identifiers. */ + CPP_KEYWORD, + /* Positions in the table. */ CPP_LAST_EQ = CPP_LSHIFT, CPP_FIRST_DIGRAPH = CPP_HASH, -- cgit v1.2.1