#
eae6cb61 |
| 05-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
rename PrettyStackTraceDecl -> PrettyStackTraceActionsDecl. Introduce a new PrettyStackTraceDecl. Use it to add the top level LLVM IR generation stuff in Backend.cpp to stack traces. We now get cra
rename PrettyStackTraceDecl -> PrettyStackTraceActionsDecl. Introduce a new PrettyStackTraceDecl. Use it to add the top level LLVM IR generation stuff in Backend.cpp to stack traces. We now get crashes like:
Stack dump: 0. Program arguments: clang t.c -emit-llvm 1. <eof> parser at end of file 2. t.c:1:5: LLVM IR generation of declaration 'a' Abort
for IR generation crashes.
llvm-svn: 66153
show more ...
|
#
e268b406 |
| 05-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
include objc method decl contexts in stack trace of crash, e.g.:
Stack dump: 0. message.m:53:13: in compound statement ('{}') 1. message.m:53:13: parsing Objective-C method 'xx' 2. clang message.m
include objc method decl contexts in stack trace of crash, e.g.:
Stack dump: 0. message.m:53:13: in compound statement ('{}') 1. message.m:53:13: parsing Objective-C method 'xx' 2. clang message.m
llvm-svn: 66121
show more ...
|
#
b8d091c4 |
| 04-Mar-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Implemented access check for ivars accessed inside c-style functions declared inside objc @implementations.
llvm-svn: 66087
|
#
371b8fb4 |
| 03-Mar-2009 |
Steve Naroff <snaroff@apple.com> |
Fix <rdar://problem/6640991> Exception handling executes wrong clause (Daniel, please verify).
Also necessary to fix:
<rdar://problem/6632061> [sema] non object types should not be allowed in @catc
Fix <rdar://problem/6640991> Exception handling executes wrong clause (Daniel, please verify).
Also necessary to fix:
<rdar://problem/6632061> [sema] non object types should not be allowed in @catch statements <rdar://problem/6252237> [sema] qualified id should be disallowed in @catch statements
llvm-svn: 65964
show more ...
|
Revision tags: llvmorg-2.5.0 |
|
#
b94d7f65 |
| 02-Mar-2009 |
Steve Naroff <snaroff@apple.com> |
Fix <rdar://problem/6636803> [sema] crash on InterfaceBuilder.
Parser::ParseObjCMethodDefinition(): Make sure we don't exit the BodyScope until ActOnFinishFunctionBody() is complete.
llvm-svn: 65880
|
#
70f41d6f |
| 28-Feb-2009 |
Steve Naroff <snaroff@apple.com> |
Minor name change (move the ObjC prefix to a more appropriate place).
llvm-svn: 65695
|
#
220cac5e |
| 18-Feb-2009 |
Douglas Gregor <dgregor@apple.com> |
Update Parser::ParseTypeName to return a TypeResult, which also tells us whether there was an error in trying to parse a type-name (type-id in C++). This allows propagation of errors further in the c
Update Parser::ParseTypeName to return a TypeResult, which also tells us whether there was an error in trying to parse a type-name (type-id in C++). This allows propagation of errors further in the compiler, suppressing more bogus error messages.
llvm-svn: 64922
show more ...
|
#
d3b5d5d1 |
| 18-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
simplify some code.
llvm-svn: 64893
|
#
8510b902 |
| 15-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
implement gcc/testsuite/objc.dg/method-attribute-3.m, by improving error recovery.
llvm-svn: 64609
|
#
0629c8f4 |
| 15-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
don't pass a random english string in as a string argument to Diag.
llvm-svn: 64608
|
#
978f08d9 |
| 14-Feb-2009 |
Anders Carlsson <andersca@mac.com> |
Pass the location of the start of the selector to ActOnClassMessage/ActOnInstanceMessage.
llvm-svn: 64560
|
#
7a54c0d7 |
| 11-Feb-2009 |
Steve Naroff <snaroff@apple.com> |
Fix <rdar://problem/6505139> [clang on growl]: need to allow unnamed selectors as the first argument
llvm-svn: 64320
|
#
5ee2c02a |
| 11-Feb-2009 |
Steve Naroff <snaroff@apple.com> |
Fix <rdar://problem/6243503> [sema] @throw; accepted outside catch block.
llvm-svn: 64318
|
#
726a0d95 |
| 05-Feb-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Put the invalid flag of OwningResult into the Action pointer. This shrinks OwningResult by one pointer. Since it is no longer larger than OwningPtr, merge the two. This leads to simpler client code a
Put the invalid flag of OwningResult into the Action pointer. This shrinks OwningResult by one pointer. Since it is no longer larger than OwningPtr, merge the two. This leads to simpler client code and speeds up my benchmark by 2.7%. For some reason, this exposes a previously hidden bug, causing a regression in SemaCXX/condition.cpp.
llvm-svn: 63867
show more ...
|
#
60f36223 |
| 29-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
move library-specific diagnostic headers into library private dirs. Reduce redundant #includes. Patch by Anders Johnsen!
llvm-svn: 63271
|
#
7368d581 |
| 27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Split the single monolithic DiagnosticKinds.def file into one .def file for each library. This means that adding a diagnostic to sema doesn't require all the other libraries to be rebuilt.
Patch by
Split the single monolithic DiagnosticKinds.def file into one .def file for each library. This means that adding a diagnostic to sema doesn't require all the other libraries to be rebuilt.
Patch by Anders Johnsen!
llvm-svn: 63111
show more ...
|
#
c2edafbd |
| 18-Jan-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Rename move_convert to move_arg and move_res. The new names are less misleading (and shorter).
llvm-svn: 62466
|
#
481bf3f4 |
| 18-Jan-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Convert ObjC statement actions to smart pointers.
llvm-svn: 62465
|
#
18789e1c |
| 17-Jan-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Diagnose that property name cannot be a bitfield
llvm-svn: 62432
|
#
45a33ecc |
| 12-Jan-2009 |
Douglas Gregor <dgregor@apple.com> |
Properly set the scope of non-fields declared within a struct, union, or enum to be outside that struct, union, or enum. Fixes several regressions:
<rdar://problem/6487662> <rdar://problem/6487
Properly set the scope of non-fields declared within a struct, union, or enum to be outside that struct, union, or enum. Fixes several regressions:
<rdar://problem/6487662> <rdar://problem/6487669> <rdar://problem/6487684> <rdar://problem/6487702> PR clang/3305 PR clang/3312
There is still some work to do in Objective-C++, but this requires that each of the Objective-C entities (interfaces, implementations, etc.) to be introduced into the context stack with PushDeclContext/PopDeclContext. This will be a separate fix, later.
llvm-svn: 62091
show more ...
|
#
c7c9ab79 |
| 09-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Fix rdar://6480479 - [parser] infinite loop on invalid input
llvm-svn: 61975
|
#
e84858cc |
| 09-Jan-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Adding support for ObjC methods which have c-style parameter list. This is work in progress.
llvm-svn: 61964
|
#
82ac25e4 |
| 08-Jan-2009 |
Douglas Gregor <dgregor@apple.com> |
Unify the code for defining tags in C and C++, so that we always introduce a Scope for the body of a tag. This reduces the number of semantic differences between C and C++ structs and unions, and wil
Unify the code for defining tags in C and C++, so that we always introduce a Scope for the body of a tag. This reduces the number of semantic differences between C and C++ structs and unions, and will help with other features (e.g., anonymous unions) in C. Some important points:
- Fields are now in the "member" namespace (IDNS_Member), to keep them separate from tags and ordinary names in C. See the new test in Sema/member-reference.c for an example of why this matters. In C++, ordinary and member name lookup will find members in both the ordinary and member namespace, so the difference between IDNS_Member and IDNS_Ordinary is erased by Sema::LookupDecl (but only in C++!). - We always introduce a Scope and push a DeclContext when we're defining a tag, in both C and C++. Previously, we had different actions and different Scope/CurContext behavior for enums, C structs/unions, and C++ structs/unions/classes. Now, it's one pair of actions. (Yay!)
There's still some fuzziness in the handling of struct/union/enum definitions within other struct/union/enum definitions in C. We'll need to do some more cleanup to eliminate some reliance on CurContext before we can solve this issue for real. What we want is for something like this:
struct X { struct T { int x; } t; };
to introduce T into translation unit scope (placing it at the appropriate point in the IdentifierResolver chain, too), but it should still have struct X as its lexical declaration context. PushOnScopeChains isn't smart enough to do that yet, though, so there's a FIXME test in nested-redef.c
llvm-svn: 61940
show more ...
|
#
52f03bac |
| 21-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Convert a few Stmt actions to smart pointers.
llvm-svn: 61309
|
#
1470e932 |
| 17-Dec-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
Semantics of @protocol attributes.
llvm-svn: 61114
|