Steve Naroff
94ede6e443
Remove an old/vacuous if clause.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57036 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 23:00:50 +00:00
Steve Naroff
4e13b762e0
More fun & games with the block rewriter.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57028 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 20:28:15 +00:00
Steve Naroff
39622b9ad9
Rewrite global block expressions.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57004 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 15:38:09 +00:00
Steve Naroff
83ba14e260
- Add a convenience constructor to Type.
...
- Many rewriter modifications.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57003 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 15:04:50 +00:00
Steve Naroff
48a8c61adb
Rework SynthesizeBlockImpl() to include a constructor.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57001 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 12:09:49 +00:00
Steve Naroff
3ad29e2542
Get the right location to insert the synthesized block literals/functions.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56987 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 00:12:09 +00:00
Steve Naroff
a0b75cf582
Name changes and some cleanup of preamble.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56984 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 23:30:43 +00:00
Steve Naroff
8af6a451ea
Changed Sema::CheckForConstantInitializer to allow global block literals.
...
This commit also includes some name changes in the blocks rewriter (no functionality change).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56955 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 17:12:56 +00:00
Steve Naroff
cc2ece2e36
Fix a couple harmless warnings when compiling optimized with gcc (reported by mrs@apple.com).
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56591 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-24 22:46:45 +00:00
Steve Naroff
1f6c3aebff
Fix some const-ness to keep the VisualStudio C++ compiler happy.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56560 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-24 17:22:34 +00:00
Steve Naroff
ca3bb4f14f
RewriteBlocks::RewriteBlockPointerDecl(): Handle TypedefDecl's and VarDecl's uniformly.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56500 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-23 21:15:53 +00:00
Steve Naroff
eab5f63207
Teach block rewriter to replace '^' with '*' in VarDecls.
...
Since we don't have DeclGroup's and location information for types, there is some fancy footwork to do this fairly reliably.
O.K...it's a kludge. One day, we can use this as motivation to do this more gracefully:-)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56499 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-23 19:24:41 +00:00
Steve Naroff
1318895690
Add driver support for invoking block rewriter.
...
Also tweaked the create function to take an explicit output file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56305 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-18 14:10:13 +00:00
Steve Naroff
9c3c902835
Remove BlockStmtExpr.
...
Block literals are now represented by the concrete BlockExpr class.
This is cleanup (removes a FIXME).
No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56288 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-17 18:37:59 +00:00
Steve Naroff
1c9f81b902
Add support for rewriting blocks...
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56266 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-17 00:13:27 +00:00