summaryrefslogtreecommitdiffstats
path: root/clang/test/Sema/block-literal.c
Commit message (Collapse)AuthorAgeFilesLines
* Implement goto inside of blocks.Mike Stump2010-01-191-1/+2
| | | | llvm-svn: 93945
* Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.Daniel Dunbar2009-12-151-1/+1
| | | | | | | | | - This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). llvm-svn: 91446
* Remove tabs, and whitespace cleanups.Mike Stump2009-09-091-21/+21
| | | | llvm-svn: 81346
* Cleanups.Mike Stump2009-08-271-41/+5
| | | | llvm-svn: 80185
* change implicit int warnings to point to the identifier, not the Chris Lattner2009-04-221-1/+1
| | | | | | | | | | | | start of the declspec. The fixit still goes there, and we underline the declspec. This helps when the start of the declspec came from a macro that expanded from a system header. For example, we now produce: t.c:2:8: warning: type specifier missing, defaults to 'int' [-Wimplicit-int] static x; ~~~~~~ ^ llvm-svn: 69777
* Fix rdar://6814950 - stdint.h isn't "-pedantic -std=c89" clean,Chris Lattner2009-04-221-1/+1
| | | | | | | | | | | | | | | | | | | | by marking the predefines buffer as a system header. The problem with stdint is that it was getting problems like this: /Volumes/Projects/cvs/llvm/Debug/lib/clang/1.0/include/stdint.h:43:9: warning: 'long long' is an extension when C99 mode is not enabled typedef __INT64_TYPE__ int64_t; ^ <built-in>:73:29: note: instantiated from: #define __INT64_TYPE__ long long ^ We correctly silence warnings in system headers, but only if the spelling location of the token came from the system header. This is designed so that if you use a system macro in your code that you don't get punished for its definition. This is all cool except that the predefines buffer wasn't considered a system header. llvm-svn: 69770
* Fixup semantic analysis for nested blocks, and allow block literalMike Stump2009-04-171-2/+2
| | | | | | | expressions that can be of static duration to be returned. Radar 6786551 llvm-svn: 69331
* Fix <rdar://problem/6765383> clang-6: clang does not appear to support ↵Steve Naroff2009-04-161-0/+6
| | | | | | declaring a static Block 'const'. llvm-svn: 69306
* Rename clang to clang-cc.Daniel Dunbar2009-03-241-1/+1
| | | | | | Tests and drivers updated, still need to shuffle dirs. llvm-svn: 67602
* Adjust isModifiableLvalue to give a slightly more useful diagnostic for Eli Friedman2009-03-221-1/+1
| | | | | | attempting to illegally modify a BlockDeclRefExpr. llvm-svn: 67491
* Fix code to mark block variables as const to actually work. Fix Eli Friedman2009-03-221-2/+2
| | | | | | | | | | | isObjCObjectPointerType to work with qualified types. Adjust test for changes. If the SemaExpr changes are wrong or break existing code, feel free to delete the "ExprTy.addConst();" line and revert my changes to test/Sema/block-literal.c. llvm-svn: 67489
* upgrade various 'implicit int' warnings from an ext-warn to warning when notChris Lattner2009-02-271-1/+1
| | | | | | | | in C89 mode. This makes it enabled by default instead of only enabled with -pedantic. Clang defaults to c99 mode, so people will see this more often than with GCC, but they can always use -std=c89 if they really want c89. llvm-svn: 65647
* instead of forcing blocks on by default, make them default to off, but letChris Lattner2008-12-041-1/+1
| | | | | | | | specific targets default them to on. Default blocks to on on 10.6 and later. Add a -fblocks option that allows the user to override the target's default. Use -fblocks in the various testcases that use blocks. llvm-svn: 60563
* disable expected-errors in #if parts of the test.Chris Lattner2008-11-211-3/+3
| | | | llvm-svn: 59771
* Changed Sema::CheckForConstantInitializer to allow global block literals.Steve Naroff2008-10-021-0/+3
| | | | | | This commit also includes some name changes in the blocks rewriter (no functionality change). llvm-svn: 56955
* Tweak Expr::isModifiableLvalue() and Expr::isLvalue() to better deal with ↵Steve Naroff2008-09-261-1/+16
| | | | | | | | BlockDeclRef exprs. This fixes <rdar://problem/6248392> clang: Error when using address of stack variable inside block. llvm-svn: 56652
* Remove support for BlockExprExpr. For example...Steve Naroff2008-09-161-16/+0
| | | | | | | | ^(expression) or ^(int arg1, float arg2)(expression) ...is no longer supported. All block literals now require a compound statement. llvm-svn: 56257
* More semantic analysis for blocks...Steve Naroff2008-09-101-0/+116
llvm-svn: 56064
OpenPOWER on IntegriCloud