[cfe-commits] r63393 - /cfe/trunk/lib/Parse/ParseDecl.cpp
Steve Naroff
snaroff at apple.com
Fri Jan 30 06:23:36 PST 2009
Author: snaroff
Date: Fri Jan 30 08:23:32 2009
New Revision: 63393
URL: http://llvm.org/viewvc/llvm-project?rev=63393&view=rev
Log:
Simplify/cleanup r63219 (based on Chris review).
Modified:
cfe/trunk/lib/Parse/ParseDecl.cpp
Modified: cfe/trunk/lib/Parse/ParseDecl.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Parse/ParseDecl.cpp?rev=63393&r1=63392&r2=63393&view=diff
==============================================================================
--- cfe/trunk/lib/Parse/ParseDecl.cpp (original)
+++ cfe/trunk/lib/Parse/ParseDecl.cpp Fri Jan 30 08:23:32 2009
@@ -1993,25 +1993,13 @@
// Alternatively, this parameter list may be an identifier list form for a
// K&R-style function: void foo(a,b,c)
if (!getLang().CPlusPlus && Tok.is(tok::identifier)) {
-
- TypeTy *TypeRep = Actions.getTypeName(*Tok.getIdentifierInfo(), CurScope);
- if (TypeRep) {
- // This is a typename. Replace the current token in-place with an
- // annotation type token.
- Tok.setKind(tok::annot_typename);
- Tok.setAnnotationValue(TypeRep);
- Tok.setAnnotationEndLoc(Tok.getLocation());
- // In case the tokens were cached, have Preprocessor replace
- // them with the annotation token.
- PP.AnnotateCachedTokens(Tok);
- } else {
+ if (!TryAnnotateTypeOrScopeToken()) {
// K&R identifier lists can't have typedefs as identifiers, per
// C99 6.7.5.3p11.
if (RequiresArg) {
Diag(Tok, diag::err_argument_required_after_attribute);
delete AttrList;
}
-
// Identifier list. Note that '(' identifier-list ')' is only allowed for
// normal declarators, not for abstract-declarators.
return ParseFunctionDeclaratorIdentifierList(LParenLoc, D);
More information about the cfe-commits
mailing list