From d6de65740d777c48fb41bae317a7f1cb17f36aff Mon Sep 17 00:00:00 2001 From: Bill Wendling Date: Sat, 2 Jun 2007 09:40:07 +0000 Subject: [PATCH] Submitted by: Bill Wendling - Added C99 reference to why "auto" and "register" cannot be used as a storage class specifier for file scoped variable declarations. llvm-svn: 39557 --- clang/Sema/SemaDecl.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/clang/Sema/SemaDecl.cpp b/clang/Sema/SemaDecl.cpp index 2963c8f4e4b4..a30944ba92c2 100644 --- a/clang/Sema/SemaDecl.cpp +++ b/clang/Sema/SemaDecl.cpp @@ -331,7 +331,8 @@ Sema::ParseDeclarator(Scope *S, Declarator &D, ExprTy *Init, return 0; } } - // FIXME: Find C99 spec reference + // C99 6.9p2: The storage-class specifiers auto and register shall not + // appear in the declaration specifiers in an external declaration. if (SC == VarDecl::Auto || SC == VarDecl::Register) { Diag(D.getIdentifierLoc(), diag::err_typecheck_sclass_fscope, R.getAsString());