| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 69334
|
| |
|
|
| |
llvm-svn: 69332
|
| |
|
|
|
|
|
| |
expressions that can be of static duration to be returned.
Radar 6786551
llvm-svn: 69331
|
| |
|
|
|
|
| |
compound, case, default, if, switch, and break statements.
llvm-svn: 69329
|
| |
|
|
|
|
| |
declaring a static Block 'const'.
llvm-svn: 69306
|
| |
|
|
|
|
| |
match gcc's.
llvm-svn: 69305
|
| |
|
|
|
|
|
|
|
|
|
| |
conversion constructors.
Remove an atrocious amount of trailing whitespace in the overloaded operator mangler. Sorry, couldn't help myself.
Change the DeclType parameter of Sema::CheckReferenceInit to be passed by value instead of reference. It wasn't changed anywhere.
Let the parser handle C++'s irregular grammar around assignment-expression and conditional-expression.
And finally, the reason for all this stuff: implement C++ semantics for the conditional operator. The implementation is complete except for determining lvalueness.
llvm-svn: 69299
|
| |
|
|
| |
llvm-svn: 69297
|
| |
|
|
|
|
| |
when generating a common definition.
llvm-svn: 69287
|
| |
|
|
|
|
| |
they are supposed to be.
llvm-svn: 69265
|
| |
|
|
|
|
|
| |
that does not require PCH support for statements. Only AddrLabelExpr,
StmtExpr, and BlockExpr remain (for C).
llvm-svn: 69255
|
| |
|
|
| |
llvm-svn: 69251
|
| |
|
|
| |
llvm-svn: 69245
|
| |
|
|
| |
llvm-svn: 69244
|
| |
|
|
| |
llvm-svn: 69242
|
| |
|
|
| |
llvm-svn: 69240
|
| |
|
|
| |
llvm-svn: 69237
|
| |
|
|
| |
llvm-svn: 69233
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- PR3980.
- <rdar://problem/6762287> [irgen] crash when generating tentative
definition of incomplete structure
- This also avoids creating common definitions for things which are
later overwritten.
- XFAIL'ed external-defs.c, it isn't completing types properly yet.
llvm-svn: 69231
|
| |
|
|
| |
llvm-svn: 69230
|
| |
|
|
|
|
| |
__string/__weak attributes.
llvm-svn: 69229
|
| |
|
|
| |
llvm-svn: 69228
|
| |
|
|
|
|
| |
- Also, fixed one to actually be one (instead of zero). :)
llvm-svn: 69226
|
| |
|
|
| |
llvm-svn: 69225
|
| |
|
|
|
|
|
|
| |
- This was particularly bad since I fixed one instance of this name
and not another, meaning we got an LLVM module with the same
effective name in two different globals!
llvm-svn: 69205
|
| |
|
|
|
|
| |
Teach Sema::SemaBuiltinVAStart() about blocks.
llvm-svn: 69201
|
| |
|
|
|
|
|
|
| |
gen. issue for property in continuation class declared readwrite
but which did not generate the declaration for the setter. Fix also
removed a FIXME and resulted in code cleanup.
llvm-svn: 69200
|
| |
|
|
| |
llvm-svn: 69199
|
| |
|
|
| |
llvm-svn: 69198
|
| |
|
|
| |
llvm-svn: 69186
|
| |
|
|
|
|
| |
feedback from Eli).
llvm-svn: 69184
|
| |
|
|
| |
llvm-svn: 69178
|
| |
|
|
| |
llvm-svn: 69172
|
| |
|
|
| |
llvm-svn: 69169
|
| |
|
|
|
|
| |
not correct for __private_extern__.
llvm-svn: 69167
|
| |
|
|
|
|
|
|
|
|
|
|
| |
jump diagnostic.
caused by: <rdar://problem/6252084> [sema] jumps into Obj-C exception blocks should be disallowed.
Sema::RecursiveCalcLabelScopes() and Sema::RecursiveCalcJumpScopes() need to pop the ScopeStack within the statement iteration loop (was outside the loop).
Eli, please review (thanks).
llvm-svn: 69165
|
| |
|
|
| |
llvm-svn: 69157
|
| |
|
|
| |
llvm-svn: 69156
|
| |
|
|
|
|
| |
right! :)
llvm-svn: 69155
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
with other diagnostic mapping. In the new scheme, -Wfoo or -Wno-foo or
-Werror=foo all override the -pedantic options, and __extension__
robustly silences all extension diagnostics in their scope.
An added bonus of this change is that MAP_DEFAULT goes away, meaning that
per-diagnostic mapping information can now be stored in 2 bits, doubling
the density of the Diagnostic::DiagMapping array. This also
substantially simplifies Diagnostic::getDiagnosticLevel.
OTOH, this temporarily introduces some "macro intensive" code in
Diagnostic.cpp. This will be addressed in a later patch.
llvm-svn: 69154
|
| |
|
|
|
|
| |
anonymous structs or unions. Fixes PR3778.
llvm-svn: 69153
|
| |
|
|
|
|
| |
b) test dramatically faster.
llvm-svn: 69135
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Set alignment on property lists.
- 32-bit:
o Set section on property lists.
o Fix section name for category class methods.
o Fix symbol name for property lists.
o Fix section name for class method.
o Set alignment and section on class extension structure.
o Set alignment on a number of things: instance variables, methods,
method descriptions, the symbols structure.
- 64-bit:
o Fix section flags for protocol list.
I doubt most of these were problems in practice, but it is nice to
match llvm-gcc.
llvm-svn: 69132
|
| |
|
|
| |
llvm-svn: 69119
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Strip off extra parens when looking for casts.
- Change the location info to point at the cast (instead of the
assignment).
For example, on
int *b;
#define a ((void*) b)
void f0() {
a = 10;
}
we now emit:
/tmp/t.c:4:3: error: assignment to cast is illegal, lvalue casts are not supported
a = 10;
^ ~
/tmp/t.c:2:12: note: instantiated from:
#define a ((void*) b)
~^~~~~~~~~~
instead of:
/tmp/t.c:4:5: error: expression is not assignable
a = 10;
~ ^
llvm-svn: 69114
|
| |
|
|
| |
llvm-svn: 69106
|
| |
|
|
|
|
|
|
|
|
| |
kind PCH handles that has an expression as an operand, so most of this
work is in the infrastructure to rebuild expression trees from the
serialized representation. We now store expressions in post-order
(e.g., Reverse Polish Notation), so that we can easily rebuild the
appropriate expression tree.
llvm-svn: 69101
|
| |
|
|
|
|
| |
extension.
llvm-svn: 69100
|
| |
|
|
|
|
|
| |
either unimplemented setter/getter or no
implementation directive.
llvm-svn: 69098
|
| |
|
|
|
|
| |
llvm-gcc).
llvm-svn: 69097
|