Anders Carlsson
6e14a8f2ac
Fix silly bug in objc_gc attribute parsing and add test case
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55286 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-24 16:33:25 +00:00
Argyrios Kyrtzidis
a88b509d23
Pass SourceRanges by reference to the various Diag methods.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55284 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-24 13:14:02 +00:00
Argyrios Kyrtzidis
897e7a38c7
Add a Parser::Diag overload that can receive a custom string along with a SourceRange.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55283 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-24 12:51:04 +00:00
Argyrios Kyrtzidis
ed5c38682c
Rename Preprocessor::DisableBacktrack -> Preprocessor::CommitBacktrackedTokens.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55281 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-24 12:29:43 +00:00
Cedric Venet
348824f780
Update VS projects.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55280 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-24 11:59:26 +00:00
Chris Lattner
6437406bb6
other updates
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55278 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-24 05:56:54 +00:00
Chris Lattner
3b88ce8e4a
link to c++ status page
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55277 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-24 05:44:37 +00:00
Chris Lattner
3e820afa3a
codegen is still not 'finished', but in a better state than before.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55276 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-24 05:42:07 +00:00
Zhongxing Xu
8148839c10
Moved HTMLDiagnostics to lib/Driver.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55274 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-24 02:33:36 +00:00
Daniel Dunbar
155f49d0ad
Add svn:ignore for docs/{doxygen,doxygen.tar.gz}
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55273 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-24 00:24:17 +00:00
Chris Lattner
e671e1bc73
Comment tweak.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55272 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-24 00:12:08 +00:00
Anders Carlsson
aa0d25b44e
Add support for parsing the objc_gc attribute. Tests will come shortly.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55269 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 23:22:21 +00:00
Chris Lattner
405674c26c
adjust to changes in various APIs from LLVM. We can't print
...
an APInt directly to an ostream now, so add some hacks. It would
be better to switch all of the bugreport (and friends) stuff over
to raw_ostream.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55264 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 22:23:37 +00:00
Anders Carlsson
4f3cc81896
Add carbon.cpp and cocoa.mm tests
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55262 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 22:21:00 +00:00
Anders Carlsson
c303606a8e
Make sure to create CXX record decls for the implicit Obj-C type declarations. This lets us compile Cocoa.h as Objective-C++
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55261 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 22:20:38 +00:00
Daniel Dunbar
4b5c4f27f3
Update ccc driver
...
- Use CCC_ECHO to control echoing behavior (default is on, set to ''
or unset to disable)
- Get 'clang','llc','as','cc','ld' executables from environment. 'cc'
and 'ld' are fetched through CCC_CC and CCC_LD respectively -- to
support make CC=ccc -- the others are through their upcased
versions.
- Add CCC_NATIVE mode.
o This uses llc and as to generate native object files; allowing
more drop-in replacement of gcc.
o Disabled by default, but should eventually be default.
o Allow --emit-llvm in CCC_NATIVE mode to override. Essentially
this makes ccc more like a drop in replacement for llvm-gcc.
- Prevent explicit -x <language> options from annoying clang.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55260 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 22:15:15 +00:00
Anders Carlsson
b88d45ea7e
treat bool literals as constatnt expressions.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55255 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 21:12:35 +00:00
Anders Carlsson
413ad8b6b5
Handle Objective-C++ tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55254 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 21:03:10 +00:00
Anders Carlsson
ef048ef393
Reserved C++ words are valid selectors in Objective-C++
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55253 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 21:00:01 +00:00
Anders Carlsson
86e9644199
Handle static initializers in Objective-C++ methods.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55250 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 19:42:54 +00:00
Argyrios Kyrtzidis
7267f7832e
Add CodeGen support for CXXZeroInitValueExpr.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55249 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 19:35:47 +00:00
Argyrios Kyrtzidis
2fba1217dc
Add a null pointer test in the type-convert-construct.cpp tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55247 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 19:24:45 +00:00
Anders Carlsson
15425f9d2d
Handle AddrLabelExprs in Expr::isConstantExpr
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55245 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 18:49:32 +00:00
Daniel Dunbar
be38d0274d
Drop a dead call to isConstantExpr()
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55244 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 18:44:10 +00:00
Daniel Dunbar
3e9df9920d
NeXT: Clean up constant CFString handling.
...
- Use CodeGenModule::GetAddrOfConstantCFString
Some tweaks of CodeGenModule::GetAddrOfConstantCFString
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55243 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 18:37:06 +00:00
Chris Lattner
5654ffda8f
Add header search paths for dragonfly, patch by Sascha Wildner!
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55242 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 18:25:07 +00:00
Chris Lattner
eac7aee3a2
Add dragonfly target support, patch by Sascha Wildner
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55241 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 18:23:14 +00:00
Anders Carlsson
67f907141a
Tweak the indentation for a couple of files
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55240 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 16:36:06 +00:00
Argyrios Kyrtzidis
cb6accb465
CXXFunctionalCastExpr is a subclass of CastExpr. Make it known to isa/dyn_cast/cast.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55237 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 15:36:01 +00:00
Argyrios Kyrtzidis
2174a4ff83
Add a safety check.
...
Make sure there's no "dangling" backtrack position when Preprocessor is destroyed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55236 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 12:12:06 +00:00
Argyrios Kyrtzidis
bff73f7f2d
Change line endings: CRLF -> LF
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55235 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 12:05:53 +00:00
Daniel Dunbar
0a04d77bde
Implement Obj-C ivar references to aggregates.
...
Implement Obj-C lvalue message sends (aggregate returns).
Update several places to emit more precise ErrorUnsupported warnings
for currently unimplemented Obj-C features (main missing chunks are
property references, Obj-C exception handling, and the for ... in
syntax).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55234 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 10:51:21 +00:00
Daniel Dunbar
14c80b7ed6
NeXT: Fix message sends which return structures.
...
- Simplify the sending code a bit.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55232 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 09:25:55 +00:00
Daniel Dunbar
dcb4a1a6dd
Add TargetInfo::useNeXTRuntimeAsDefault
...
- Used to autoselect runtime when neither -fnext-runtime nor
-fgnu-runtime is specified.
- Default impl is false, all darwin targets set it to true.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55231 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 08:43:39 +00:00
Daniel Dunbar
e8b470d40c
NeXT: Implement super message sends.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55225 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 04:28:29 +00:00
Daniel Dunbar
8f2926b73e
Trim CGObjCRuntime::GenerateMessageSend[Super]
...
- Returns an RValue.
- Reduced to only taking the CodeGenFunction, Expr, and Receiver.
- Becomes responsible for emitting the arguments.
Add CodeGenFunction::EmitCallExprExt
- Takes optional extra arguments to insert at the head of the call.
- This allows the Obj-C runtimes to call into this and isolates the
argument and call instruction generation code to one place. Upshot
is that we now pass structures (more) correctly.
Also, fix one aspect of generating methods which take structure
arguments (for NeXT). This probably needs to be merged with the
SetFunctionAttributes code in CodeGenModule.cpp
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55223 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 03:46:30 +00:00
Chris Lattner
9299f3fa85
make sure that ParseAST invokes the action for end of translation unit.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55222 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 03:19:52 +00:00
Daniel Dunbar
2eecaab0fa
Move [LR]Value into CGValue.h
...
- No (intended) functional change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55221 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 03:10:25 +00:00
Chris Lattner
a9e8fec800
add action to know about end of translation unit.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55218 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 02:06:50 +00:00
Chris Lattner
5ffb14b7e8
we already have a handle on the 'in' keyword, don't bother getting two.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55217 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 02:02:23 +00:00
Chris Lattner
06f548596b
minor cleanup, remove finalize method.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55216 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 02:00:52 +00:00
Chris Lattner
e8904e992c
Fix a FIXME by not creating an invalid AST on erroneous input. Also
...
make diagnostic output in some other malformed cases significantly
more useful. This fixes PR2708
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55215 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 01:48:03 +00:00
Ted Kremenek
e53c069bda
Simplify interface to Store::AddDecl
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55213 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 00:50:55 +00:00
Ted Kremenek
f03a8d276c
Added Regions.h: Regions define abstract memory locations for the static analyzer.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55211 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 00:43:24 +00:00
Daniel Dunbar
c8ef551615
NeXT: Emit property metadata (classes, protocols, categories).
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55209 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-23 00:19:03 +00:00
Anders Carlsson
6782fc6925
Use isa instead of dyn_cast.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55207 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-22 22:10:48 +00:00
Argyrios Kyrtzidis
a9e274c01e
Allow nested backtracks.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55204 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-22 21:27:50 +00:00
Daniel Dunbar
86e253a0cb
NeXT: Emit category metadata.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55197 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-22 20:34:54 +00:00
Daniel Dunbar
0df8c0816b
Add some QA related example clang projects.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55196 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-22 20:18:22 +00:00
Ted Kremenek
298b425fb3
Update Xcode project.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55188 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-22 18:03:50 +00:00