| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
from pointer->int.
llvm-svn: 45591
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
it from several places. This merges the diagnostics, making them more
uniform and fewer in number. This also simplifies and cleans up the code.
Some highlights:
1. This removes a bunch of very-similar diagnostics.
2. This renames AssignmentCheckResult -> AssignConvertType
3. This merges PointerFromInt + IntFromPointer which were always treated the same.
4. This updates a bunch of test cases that have minor changes to the produced diagnostics.
llvm-svn: 45589
|
|
|
|
| |
llvm-svn: 45561
|
|
|
|
| |
llvm-svn: 45560
|
|
|
|
| |
llvm-svn: 45558
|
|
|
|
| |
llvm-svn: 45556
|
|
|
|
|
|
| |
function" warnings.
llvm-svn: 45546
|
|
|
|
| |
llvm-svn: 45542
|
|
|
|
| |
llvm-svn: 45504
|
|
|
|
|
|
| |
Add codegen support and test for said casts.
llvm-svn: 45443
|
|
|
|
| |
llvm-svn: 45442
|
|
|
|
|
|
| |
discussion of this change.
llvm-svn: 45410
|
|
|
|
|
|
|
|
|
|
|
|
| |
and OwningPtr instead of constructing only after all of sema is done. This
has a couple of effects:
1. it fixes memory leaks from all the error cases in sema
2. it simplifies the code significantly.
The cost of this is that the error case now new's and delete's an expr where
it did not before, but we don't care about the perf of the error case.
llvm-svn: 45380
|
|
|
|
|
|
| |
of conforming protocols (or not).
llvm-svn: 45276
|
|
|
|
|
|
| |
are due to arrive.
llvm-svn: 45244
|
|
|
|
| |
llvm-svn: 45243
|
|
|
|
| |
llvm-svn: 45239
|
|
|
|
| |
llvm-svn: 45235
|
|
|
|
| |
llvm-svn: 45234
|
|
|
|
| |
llvm-svn: 45224
|
|
|
|
|
|
| |
protocol list.
llvm-svn: 45203
|
|
|
|
|
|
|
|
|
|
|
| |
Sema::ActOnUnaryOp().
This fixes a bug Chris forwarded from Oliver Hunt...
typedef struct { char name[100]; } entry;
char f1(entry *e) { return *e->name; }
llvm-svn: 45148
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Changed Sema::ObjcActOnStartOfMethodDef() to register the methods with the global pools.
- Changed Sema::ActOnInstanceMessage() to look in global pools (should be much less error prone).
- Added a test case to message.m (for lookup that was broken).
Misc changes while I was investigating this...
- Changed Sema::ActOnAtEnd() to call AddFactoryMethodToGlobalPool (this looked like a cut/paste error).
- Added a comment and tweaked another where I was using the first person.
llvm-svn: 45142
|
|
|
|
|
|
| |
the protocol list (id<P,...> types).
llvm-svn: 45121
|
|
|
|
|
|
| |
Bug and test case provided by Carl Lewis.
llvm-svn: 45078
|
|
|
|
| |
llvm-svn: 45014
|
|
|
|
|
|
| |
has to be a modifiable lvalue.
llvm-svn: 44993
|
|
|
|
| |
llvm-svn: 44964
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Moved all clients of Diagnostics to use FullSourceLoc instead of SourceLocation.
Added many utility methods to FullSourceLoc to provide shorthand for:
FullLoc.getManager().someMethod(FullLoc.getLocation());
instead we have:
FullLoc.someMethod();
Modified TextDiagnostics (and related classes) to use this short-hand.
llvm-svn: 44957
|
|
|
|
|
|
|
|
|
|
|
|
| |
int test(int x, long long y) {
return x << y;
}
we now realize the type of the shift is int, not long long.
This fixes a fixme from june.
llvm-svn: 44912
|
|
|
|
|
|
|
|
| |
this is passed to sema and ignored there, so the second part of the
string will not make it into the AST. Passing to Fariborz to finish
Sema + AST construction.
llvm-svn: 44898
|
|
|
|
| |
llvm-svn: 44843
|
|
|
|
|
|
| |
Adapted from a patch by Anders Carlsson.
llvm-svn: 44816
|
|
|
|
|
|
| |
C99 6.5.6.
llvm-svn: 44746
|
|
|
|
|
|
| |
type.
llvm-svn: 44685
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
class interface isn't in scope!
As the comment in the code indicates, I'm not fond of this. Nevertheless, gcc compat is a goal.
Here is the case I'm talking about...
#import <Foundation/Foundation.h>
@interface AnyClass : NSObject
- (NSRect)rect;
@end
@class Helicopter;
static void func(Helicopter *obj) {
NSRect r = [obj rect];
}
...before this patch, we would warn/error. With this patch, everything "just works".
llvm-svn: 44682
|
|
|
|
|
|
| |
the front-end.
llvm-svn: 44673
|
|
|
|
|
|
| |
"@class Protocol;"
llvm-svn: 44670
|
|
|
|
| |
llvm-svn: 44666
|
|
|
|
|
|
| |
to rewriter (my previous patch).
llvm-svn: 44665
|
|
|
|
|
|
| |
crash because of this.
llvm-svn: 44648
|
|
|
|
| |
llvm-svn: 44617
|
|
|
|
| |
llvm-svn: 44605
|
|
|
|
| |
llvm-svn: 44449
|
|
|
|
|
|
|
|
| |
the APFloat representing the parsed literal can represent the literal value
exactly. This is useful when performing various semantic checks on the code,
and issuing appropriate warnings to users.
llvm-svn: 44423
|
|
|
|
|
|
|
|
| |
Sema::CheckSingleInitializer/ActOnCallExpr/CheckMessageArgumentTypes/ActOnReturnStmt to Sema::CheckSingleAssignmentConstraints. This makes sure all null pointer assignments are considered compatible.
Thanks to Seo Sanghyeon for the bug, follow-through, and patch!
llvm-svn: 44366
|
|
|
|
| |
llvm-svn: 44350
|
|
|
|
|
|
|
|
| |
missing middle expression, and fix a codegen bug where
we didn't correctly promote the condition to the right
result type. This fixes PR1824.
llvm-svn: 44322
|
|
|
|
|
|
|
|
|
| |
Moved utility functions IgnoreParen and friends to be static inline functions
defined in SemaUtil.h.
Added SemaUtil.h to Xcode project.
llvm-svn: 44312
|
|
|
|
|
|
|
|
| |
This fixes a bug reported by Seo Sanghyeon.
This was meant to be committed yesterday, but the commit failed. doh.
llvm-svn: 44190
|