hanchenye-llvm-project/clang/test/Sema
Steve Naroff ab468cb14b Allow the parser to detect invalid DeclSpec's. This fixes http://llvm.org/bugs/show_bug.cgi?id=1987.
This commit only "guards" the call to ParseDeclarationSpecifiers() in ParseDeclarationOrFunctionDefinition(). 

We could consider guarding all calls, however this is a bit radical (since it effectively stops parsing the declaration once we have a bad declspec). Will discuss with Chris tomorrow.

llvm-svn: 46984
2008-02-12 04:08:59 +00:00
..
DoubleMethod.m Patch to diagnose duplicate method implementations. 2007-10-16 21:52:23 +00:00
address-constant.c improve handling of address of global when checking for 2007-11-13 18:05:45 +00:00
alias-test-1.m This patch implementa objective-c's @compatibilty-alias declaration. 2007-10-11 23:42:27 +00:00
alias-test-2.m Fixed a @compatible_alias bug. In the process, discovered unnecessary 2ndry lookup 2007-10-12 19:38:20 +00:00
arg-duplicate.c rename -parse-ast-print to -ast-print 2007-10-11 00:18:28 +00:00
arg-invalid.c rename -parse-ast-print to -ast-print 2007-10-11 00:18:28 +00:00
argument-checking.m Fix PR1992 by computing the right type for string literals, which 2008-02-11 00:02:17 +00:00
array-constraint.c Sema::FinalizeDeclaratorGroup(): Tighten up the tentative definition rule when dealing with arrays. 2008-01-18 20:40:52 +00:00
array-declared-as-incorrect-type.c Add better validation for array types when merging decls. Patch 2007-11-06 04:28:31 +00:00
array-init.c Fix PR1992 by computing the right type for string literals, which 2008-02-11 00:02:17 +00:00
asm.c Check that the clobber registers are valid. 2007-11-25 00:25:21 +00:00
assign-null.c Move the null pointer constant check from Sema::CheckSingleInitializer/ActOnCallExpr/CheckMessageArgumentTypes/ActOnReturnStmt to Sema::CheckSingleAssignmentConstraints. This makes sure all null pointer assignments are considered compatible. 2007-11-27 17:58:44 +00:00
assign.c Fix <rdar://problem/5733511> clang doesn't emit error for const array. 2008-02-09 16:59:44 +00:00
ast-print.c Fix a bug handling typedefs of functions, patch by Nuno Lopes! 2007-12-06 17:20:20 +00:00
builtins.c add comments for the various AssignConvertType's, and split int->pointer from pointer->int. 2008-01-04 18:22:42 +00:00
c89-2.c -C mode doesn't return comments on "#" lines, so the diag checker doesn't pick them up. 2007-08-30 06:38:49 +00:00
c89.c Fix PR1999, by emitting a hard error only if an argument declarator is completely 2008-02-10 23:08:00 +00:00
carbon.c Rename stats to print-stats to avoid conflicting with llvm's 2007-12-30 01:38:50 +00:00
cast.c casting to void is ok for structs (C99 6.5.4p2), this fixes 2007-10-29 04:26:44 +00:00
category-1.m - Tweak several tests to be compatible with my last commit. 2007-12-11 03:34:41 +00:00
check-dup-decl-methods-1.m Patch to check for duplicate method decls in protocols. 2007-10-12 23:43:31 +00:00
check-dup-objc-decls-1.m Several name lookup conflict detection fixes involving objective-c names. 2007-10-15 19:16:57 +00:00
check-increment.c Make sure Sema::CheckIncrementDecrementOperand() removes typedefs when doing it's analysis. 2007-11-11 14:15:57 +00:00
class-conforming-protocol-1.m Patch to create protocol conforming class types. 2007-10-11 00:55:41 +00:00
class-def-test-1.m - Tweak several tests to be compatible with my last commit. 2007-12-11 03:34:41 +00:00
class-impl-1.m Fixed all my recent test cases to have the RUN command and 2007-10-04 00:22:33 +00:00
class-proto-1.m - Tweak several tests to be compatible with my last commit. 2007-12-11 03:34:41 +00:00
cocoa.m Rename stats to print-stats to avoid conflicting with llvm's 2007-12-30 01:38:50 +00:00
compare.c Be a bit stricter about array type compatibility. 2008-02-06 04:53:22 +00:00
complex-int.c Finish up handling all permutations of "complex int" (in Sema::UsualArithmeticConversions()). 2008-01-15 22:21:49 +00:00
compound-literal.c Fix PR1992 by computing the right type for string literals, which 2008-02-11 00:02:17 +00:00
conditional-expr.c Add a couple of sema tests for qualifiers with conditionals containing 2008-02-10 23:14:16 +00:00
conditional.c Fix an nice and subtle parser bug reported by Nico Weber. 2007-12-18 06:06:23 +00:00
conflicting-ivar-test-1.m Fixed test to match the new diagnostic text. 2007-12-13 00:16:34 +00:00
cxx-references.cpp Fix for testcase that assigns a dereferenced reference to a pointer. The 2007-12-03 07:33:35 +00:00
decl-invalid.c rename -parse-ast-print to -ast-print 2007-10-11 00:18:28 +00:00
declspec.c Allow the parser to detect invalid DeclSpec's. This fixes http://llvm.org/bugs/show_bug.cgi?id=1987. 2008-02-12 04:08:59 +00:00
default.c rename -parse-ast-print to -ast-print 2007-10-11 00:18:28 +00:00
deref.c Refine bug fix to Expr::isLvalue (commit r46917). 2008-02-10 01:39:04 +00:00
enhanced-proto-2.m For @optional unimplemented methods do not issue the warning. 2007-12-11 19:10:26 +00:00
enum.c Sema::FinalizeDeclaratorGroup()...make sure we emit an diagnostic for tentative definitions with incomplete types. Touch up all test cases that are effected. 2008-01-18 00:39:39 +00:00
expr-address-of.c It is allowed to get the address of an array subscript, even if the array has the register qualifier, if the array is really a pointer. 2008-02-01 07:15:58 +00:00
exprs.c Implement support for __extension__ which silences extwarnings in its 2008-02-02 20:20:10 +00:00
floating-point-compare.c Fixed test case to not expect a warning when one should not be emitted. 2007-11-29 01:03:21 +00:00
for.c rename -parse-ast-print to -ast-print 2007-10-11 00:18:28 +00:00
format-strings.c Modified format-string checking to not emit a warning when all of the 2007-12-17 19:03:13 +00:00
forward-class-1.m Fixed all my recent test cases to have the RUN command and 2007-10-04 00:22:33 +00:00
function-ptr.c give better diagnostics for converting between function pointer and void*. 2008-01-03 22:56:36 +00:00
function.c Fix PR1999, by emitting a hard error only if an argument declarator is completely 2008-02-10 23:08:00 +00:00
i-c-e1.c new testcase 2007-06-08 17:58:14 +00:00
i-c-e2.c Fix PR1992 by computing the right type for string literals, which 2008-02-11 00:02:17 +00:00
id_builtin.m rename test file for builtin "id"... 2007-10-17 18:39:04 +00:00
if-empty-body.c improve error recovery handling broken 'then' or 'else' stmts in 2007-10-29 05:08:52 +00:00
illegal-types.c Make sure Sema::GetTypeForDeclarator() deals with abstract declarators when diagnosing incorrect code. 2008-01-14 23:33:18 +00:00
implicit-cast.c Fix a bug in Sema::CheckConditionalOperands(). When mixing pointers and null pointer constants, we need to promote the null pointer constant (which is an integer) to the pointer type. Test case is self explanatory. 2007-10-18 05:13:08 +00:00
implicit-def.c rename -parse-ast-print to -ast-print 2007-10-11 00:18:28 +00:00
implicit-int.c Unspecified type specs default to int. This fixes a crash 2007-07-13 21:02:29 +00:00
incompatible-protocol-qualified-types.m Merge all the 'assignment' diagnostic code into one routine, decloning 2008-01-04 18:04:52 +00:00
incomplete-decl.c Sema::FinalizeDeclaratorGroup(): Tighten up the tentative definition rule when dealing with arrays. 2008-01-18 20:40:52 +00:00
init.c Improve diagnostic for illegal array initialization. 2008-02-08 00:48:24 +00:00
invalid-decl.c add run lines. 2007-12-12 06:22:14 +00:00
invalid-objc-decls-1.m fix expected errors. 2007-12-12 01:15:04 +00:00
invalid-struct-init.c Tweak test... 2008-02-11 02:16:41 +00:00
ivar-sem-check-1.m Fixed all my recent test cases to have the RUN command and 2007-10-04 00:22:33 +00:00
member-reference.c Sema::ActOnMemberReferenceExpr() needs to perform the default conversions. 2007-12-16 21:42:28 +00:00
merge-decls.c Sema::MergeFunctionDecl()...make sure diagnostic is accurate (wrt function declarations/definitions). Patch by Carl Lewis! 2008-01-16 15:01:34 +00:00
message.m Improve how we find private method decls. This involved: 2007-12-18 01:30:32 +00:00
method-def-1.m add run lines. 2007-12-12 06:22:14 +00:00
method-def-2.m pretty priting for method definitions. 2007-11-10 20:59:13 +00:00
method-encoding-2.m Insert invisble arguments to method definition header. 2007-11-09 17:18:29 +00:00
method-not-defined.m Predefine all the ObjC goodies from <objc/objc.h>. Removed all the ObjC goodies from the respective test files. Moving forward, it will be very nice to assume these builtin! 2007-10-17 17:53:50 +00:00
method-undef-category-warn-1.m A bunch-o changes to fix <rdar://problem/5716046> incomplete implementation of ObjC class warning is incomplete 2008-02-08 22:06:17 +00:00
method-undefined-warn-1.m A bunch-o changes to fix <rdar://problem/5716046> incomplete implementation of ObjC class warning is incomplete 2008-02-08 22:06:17 +00:00
missing-string-interface.m Include a simple test case for the previous commit... 2007-10-19 00:05:15 +00:00
ms-fuzzy-asm.c Use getLogicalLineNumber() in FuzzyParseMicrosoftAsmStatement(), it's more general and simplifies the code. 2008-02-08 18:01:27 +00:00
objc-bad-receiver-1.m make some diagnostics more terse, update testcases. 2008-02-01 06:57:39 +00:00
objc-comptypes-1.m Remove dependency on objc.h 2008-01-09 00:33:05 +00:00
objc-comptypes-2.m Remove dependency on objc.h 2008-01-09 00:33:05 +00:00
objc-comptypes-3.m Remove dependency on objc.h 2008-01-09 00:33:05 +00:00
objc-comptypes-4.m Patch to compare to objective-c static types where one or the other 2007-12-21 17:34:43 +00:00
objc-comptypes-5.m Remove dependency on objc.h 2008-01-09 00:33:05 +00:00
objc-comptypes-6.m Remove dependency on objc.h 2008-01-09 00:33:05 +00:00
objc-comptypes-7.m Remove dependency on objc.h 2008-01-09 00:33:05 +00:00
objc-comptypes-8.m Fixed a bug reported by Chris, involving assiging 0 to a qualified object type. 2008-01-03 18:46:52 +00:00
objc-legacy-implementation-1.m Fixed all my recent test cases to have the RUN command and 2007-10-04 00:22:33 +00:00
objc-string.m More objective-c type checking. This time comparing objective-c known objects. 2007-12-20 22:37:58 +00:00
objc-unused.m objc messages have side effects, return true from hasLocalSideEffect, 2007-09-26 22:06:30 +00:00
offsetof.c make this pass by adding an expected error, add some tests. 2008-01-30 06:46:30 +00:00
predef.c Tighten up handling of __func__ and friends: it should be an array 2008-01-12 18:39:25 +00:00
predefined-function.c Sema::MergeFunctionDecl()...make sure diagnostic is accurate (wrt function declarations/definitions). Patch by Carl Lewis! 2008-01-16 15:01:34 +00:00
protocol-expr-1.m Patch to implement "Protocol" as a built-in type declared as 2007-12-07 00:18:54 +00:00
protocol-expr-neg-1.m Patch to implement "Protocol" as a built-in type declared as 2007-12-07 00:18:54 +00:00
protocol-id-test-1.m Patch to implemented objective-c's dynamic object pointer qualified with 2007-12-17 21:03:50 +00:00
protocol-id-test-2.m Patch to implemented objective-c's dynamic object pointer qualified with 2007-12-17 21:03:50 +00:00
protocol-id-test-3.m Merge all the 'assignment' diagnostic code into one routine, decloning 2008-01-04 18:04:52 +00:00
protocol-test-1.m Fixed all my recent test cases to have the RUN command and 2007-10-04 00:22:33 +00:00
protocol-test-2.m - Tweak several tests to be compatible with my last commit. 2007-12-11 03:34:41 +00:00
recover-goto.c Fix a bug recovering from broken code with a goto that Eli reported. 2008-01-25 00:01:10 +00:00
return-stack-addr.cpp Fix a bogus test 2008-01-31 06:06:29 +00:00
selector-1.m Predefine all the ObjC goodies from <objc/objc.h>. Removed all the ObjC goodies from the respective test files. Moving forward, it will be very nice to assume these builtin! 2007-10-17 17:53:50 +00:00
selector-overload.m Predefine all the ObjC goodies from <objc/objc.h>. Removed all the ObjC goodies from the respective test files. Moving forward, it will be very nice to assume these builtin! 2007-10-17 17:53:50 +00:00
self-comparison.c Added to test case for "self-comparison check" uses of relation operators: x < x and x > x 2007-10-29 17:02:56 +00:00
shift.c Don't do integer promotions of LHS for compound shift assignment. The LHS has to be a modifiable lvalue. 2007-12-13 07:28:16 +00:00
static-init.c Generate code for static variables that don't have initializers. Also, report an error if a static initializer is not constant. 2007-10-17 00:52:43 +00:00
static-ivar-ref-1.m Patch to do statically typed ivar references. 2007-11-12 22:29:28 +00:00
stmt_exprs.c Added missing "RUN:" to comment for test case file. This fixed a bug where the test 2007-11-28 19:05:11 +00:00
switch-duplicate-defaults.c rename -parse-ast-print to -ast-print 2007-10-11 00:18:28 +00:00
switch.c rename -parse-ast-print to -ast-print 2007-10-11 00:18:28 +00:00
tentative-decls.c Many refinements to Sema::MergeVarDecl(). This routine still needs some re-work to fully handle tentative decls. 2008-01-30 00:44:01 +00:00
typecheck-binop.c Implement correct semantic analysis of subtractions, implementing 2007-12-09 21:53:25 +00:00
typedef-prototype.c implement test/Sema/typedef-prototype.c, allowing code 2007-11-14 06:34:38 +00:00
typedef-retain.c Merge all the 'assignment' diagnostic code into one routine, decloning 2008-01-04 18:04:52 +00:00
undef-protocol-methods-1.m A bunch-o changes to fix <rdar://problem/5716046> incomplete implementation of ObjC class warning is incomplete 2008-02-08 22:06:17 +00:00
undef-superclass-1.m Fixed all my recent test cases to have the RUN command and 2007-10-04 00:22:33 +00:00
undefined-protocol-type-1.m This is the first patch toward supporting protocol conforming 2007-10-05 21:01:53 +00:00
unused-expr.c rename -parse-ast-print to -ast-print 2007-10-11 00:18:28 +00:00
usual-float.c Fix a basic bug (having to do with typedefs) in Sema::UsualArithmeticConversions(). 2007-11-10 19:45:54 +00:00
va-method-1.m Elimate bogus warning when va_start is correctly used in 2008-01-21 22:59:53 +00:00
varargs.c Get rid of bogus warnings when the second argument in va_start is either an implicit cast expr or a paren expr. 2008-02-11 04:20:54 +00:00
vector-assign.c Merge all the 'assignment' diagnostic code into one routine, decloning 2008-01-04 18:04:52 +00:00
vector-cast.c Report errors for invalid casts from/to vectors. 2007-11-27 05:51:55 +00:00
vector-init.c Support checking and codegen of constant vector globals 2008-01-25 05:34:48 +00:00
vla.c Fix the location we emit the "not a constant" error for this: 2007-12-18 07:15:40 +00:00
void_arg.c Fix a bug checking for 'int foo(void)' that didn't look through typedefs of void. 2007-11-28 18:51:29 +00:00