diff options
author | Michi Henning <michi@zeroc.com> | 2002-07-16 09:41:39 +0000 |
---|---|---|
committer | Michi Henning <michi@zeroc.com> | 2002-07-16 09:41:39 +0000 |
commit | 963bf35c720a698dfea603c1bcfe81115aaa96d1 (patch) | |
tree | f578d5647e6972ee8e50dcedd11986f3f515da35 /cpp/src/Slice/CPlusPlusUtil.cpp | |
parent | Added IceBox.Name configuration variable (diff) | |
download | ice-963bf35c720a698dfea603c1bcfe81115aaa96d1.tar.bz2 ice-963bf35c720a698dfea603c1bcfe81115aaa96d1.tar.xz ice-963bf35c720a698dfea603c1bcfe81115aaa96d1.zip |
Added sanity checks to make sure that the meaning of an identifier doesn't
change halfway through a scope. This all works now, except for
operations because, currently, parameter lists are not in their own
scope (but they have to be).
Will add that tomorrow. Also want to improve diagnostics to show, if an
identifier changes meaning, where it was introduced with different
meaning.
Diffstat (limited to 'cpp/src/Slice/CPlusPlusUtil.cpp')
-rw-r--r-- | cpp/src/Slice/CPlusPlusUtil.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/cpp/src/Slice/CPlusPlusUtil.cpp b/cpp/src/Slice/CPlusPlusUtil.cpp index 4154018bc18..f4838f81b35 100644 --- a/cpp/src/Slice/CPlusPlusUtil.cpp +++ b/cpp/src/Slice/CPlusPlusUtil.cpp @@ -276,13 +276,14 @@ lookupKwd(const string& name) // static const string keywordList[] = { - "asm", "auto", "bool", "break", "case", "catch", "char", "class", "const", "const_cast", - "continue", "default", "delete", "do", "double", "dynamic_cast", "else", "enum", "explicit", - "export", "extern", "false", "float", "for", "friend", "goto", "if", "inline", "int", "long", - "mutable", "namespace", "new", "operator", "private", "protected", "public", "register", - "reinterpret_cast", "return", "short", "signed", "sizeof", "static", "static_cast", "struct", - "switch", "template", "this", "throw", "true", "try", "typedef", "typeid", "typename", "union", - "unsigned", "using", "virtual", "void", "volatile", "wchar_t", "while" + "and", "and_eq", "asm", "auto", "bit_and", "bit_or", "bool", "break", "case", "catch", "char", + "class", "compl", "const", "const_cast", "continue", "default", "delete", "do", "double", + "dynamic_cast", "else", "enum", "explicit", "export", "extern", "false", "float", "for", + "friend", "goto", "if", "inline", "int", "long", "mutable", "namespace", "new", "not", "not_eq", + "operator", "or", "or_eq", "private", "protected", "public", "register", "reinterpret_cast", + "return", "short", "signed", "sizeof", "static", "static_cast", "struct", "switch", "template", + "this", "throw", "true", "try", "typedef", "typeid", "typename", "union", "unsigned", "using", + "virtual", "void", "volatile", "wchar_t", "while", "xor", "xor_eq" }; bool found = binary_search(&keywordList[0], &keywordList[sizeof(keywordList) / sizeof(*keywordList)], |