From 33c6ebef6f9acad6eb667fff77ff78f0c169332c Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sun, 12 Apr 2009 22:12:26 +0000 Subject: mark the declspec as invalid when we recover instead of forcing to int, this allows downstream diags to be properly silenced. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68917 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Parse/ParseDecl.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'lib/Parse/ParseDecl.cpp') diff --git a/lib/Parse/ParseDecl.cpp b/lib/Parse/ParseDecl.cpp index ae00ada311..5b8963f892 100644 --- a/lib/Parse/ParseDecl.cpp +++ b/lib/Parse/ParseDecl.cpp @@ -681,9 +681,10 @@ void Parser::ParseDeclarationSpecifiers(DeclSpec &DS, } // Since this is almost certainly an invalid type name, emit a - // diagnostic that says it, eat the token, and pretend we saw an 'int'. + // diagnostic that says it, eat the token, and mark the declspec as + // invalid. Diag(Loc, diag::err_unknown_typename) << Tok.getIdentifierInfo(); - DS.SetTypeSpecType(DeclSpec::TST_int, Loc, PrevSpec); + DS.SetTypeSpecType(DeclSpec::TST_error, Loc, PrevSpec); DS.SetRangeEnd(Tok.getLocation()); ConsumeToken(); @@ -691,7 +692,6 @@ void Parser::ParseDeclarationSpecifiers(DeclSpec &DS, // avoid rippling error messages on subsequent uses of the same type, // could be useful if #include was forgotten. - // FIXME: Mark DeclSpec as invalid. goto DoneWithDeclSpec; } -- cgit v1.2.3-18-g5258