[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