| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
| |
instantiation), be sure to add the transformed declaration into the
current DeclContext. Also, remove the -Wuninitialized hack that works
around this bug. Fixes <rdar://problem/9200676>.
llvm-svn: 129544
|
| |
|
|
|
|
| |
draft standard (N3291).
llvm-svn: 129541
|
| |
|
|
|
|
|
|
| |
and is interpreted as "[:" because of the digraph "<:". When found, give an error with a fix-it to add whitespace between the "<" and "::".
Patch by Richard Trieu! Plus a small tweak from me to deal with one of the tokens coming from a macro.
llvm-svn: 129540
|
| |
|
|
|
|
| |
// rdar://9208404
llvm-svn: 129536
|
| |
|
|
|
|
|
| |
completion, look through block pointer and function pointer types to the
result type of the block/function. Fixes <rdar://problem/9282583>.
llvm-svn: 129535
|
| |
|
|
|
|
|
|
|
|
| |
convention selection (AAPCS or
AAPCS+VFP), similar to fastcall / stdcall / whatevercall seen on x86.
In particular, all library functions should always be AAPCS regardless of floating point ABI used.
llvm-svn: 129534
|
| |
|
|
| |
llvm-svn: 129525
|
| |
|
|
|
|
|
| |
diagnosing it as an error rather than looping infinitely. Also,
explicitly disallow @defs in Objective-C++. Fixes <rdar://problem/9260136>.
llvm-svn: 129521
|
| |
|
|
|
|
| |
function template from a previous PCH. Fixes the only crasher when using massive chains on Clang's Sema component. We still have some incomplete codegen there.
llvm-svn: 129516
|
| |
|
|
| |
llvm-svn: 129514
|
| |
|
|
|
|
| |
the wrong order. The effect was that all but the first chain-include files was ignored for subsequent compilations.
llvm-svn: 129513
|
| |
|
|
|
|
| |
CFGBuilder::VisitUnaryExprOrTypeTraitExpr().
llvm-svn: 129499
|
| |
|
|
|
|
| |
functionality intended.
llvm-svn: 129496
|
| |
|
|
|
|
|
| |
DiagnosticBuilder::AddFixItHint: they will be dropped along with any
other (possibly valid) fixits later.
llvm-svn: 129495
|
| |
|
|
|
|
|
|
|
|
| |
that the class
named by the nested-name-specifier is same or base of the class in which the member expression appears.
It seems we also had an ill-formed test case, mon dieu! Fixes rdar://8576107.
llvm-svn: 129493
|
| |
|
|
|
|
| |
in functionality intended.
llvm-svn: 129491
|
| |
|
|
|
|
|
| |
is 1 element smaller than the string, because we can just strip off the last
null character. This matches GCC.
llvm-svn: 129490
|
| |
|
|
|
|
| |
string or not.
llvm-svn: 129488
|
| |
|
|
|
|
| |
// rdar://9091893
llvm-svn: 129481
|
| |
|
|
|
|
| |
defined in a macro. // rdar://9091893
llvm-svn: 129465
|
| |
|
|
|
|
| |
generated by a regular 'load' now.
llvm-svn: 129464
|
| |
|
|
|
|
| |
even if an identifier could resolve to a builtin.
llvm-svn: 129438
|
| |
|
|
| |
llvm-svn: 129434
|
| |
|
|
| |
llvm-svn: 129433
|
| |
|
|
|
|
|
|
|
|
|
| |
evaluated and unevaluated contexts. Add some testing of sizeof and
typeid.
Both of the typeid tests added here were triggering warnings previously.
Now the one false positive is suppressed without suppressing the warning
on actually buggy code.
llvm-svn: 129431
|
| |
|
|
|
|
| |
RewriterOptions struct.
llvm-svn: 129430
|
| |
|
|
|
|
|
|
|
| |
take it!
I wasn't able to get __builtin_ia32_loaddqu to transform into an unaligned
load...I'll have to look into it further.
llvm-svn: 129427
|
| |
|
|
| |
llvm-svn: 129426
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the type of one of the base classes then downgrade the missing typename error to a warning. Up to now this is the only case I found where MSVC doesn't require "typename" at class scope. Really strange!
This fixes 1 error when parsing the MSVC 2008 header files.
Example:
template<class T> class A {
public:
typedef int TYPE;
};
template<class T> class B : public A<T> {
public:
A<T>::TYPE a; // no typename required because A<T> is a base class.
};
llvm-svn: 129425
|
| |
|
|
| |
llvm-svn: 129424
|
| |
|
|
| |
llvm-svn: 129420
|
| |
|
|
|
|
| |
undergoes preprocessing.
llvm-svn: 129414
|
| |
|
|
|
|
|
| |
objective-c instead of crashing in IRgen.
// rdar://9154582.
llvm-svn: 129412
|
| |
|
|
|
|
|
|
|
|
| |
there is no reason to align them higher.
- This roughly matches llvm-gcc's r126913.
- It is an open question whether or not we should do this for cstring's in
general (code size vs optimization potential), for now we just match llvm-gcc
until someone wants to run some experiments.
llvm-svn: 129410
|
| |
|
|
|
|
|
|
|
| |
because the result is ignored. The particular example here is with
property l-values, but there could be all sorts of lovely casts that this
isn't safe for. Sink the check into the one case that seems to actually
be capable of honoring this.
llvm-svn: 129397
|
| |
|
|
|
|
| |
declared in protocols.
llvm-svn: 129395
|
| |
|
|
|
|
|
|
| |
active block on the worklist
impacts the results of the check.
llvm-svn: 129394
|
| |
|
|
|
|
| |
0-index of a symbolic region. In many cases that isn't really the base offset.
llvm-svn: 129366
|
| |
|
|
|
|
| |
inputs are not NULL and are real C strings, then does the comparison and binds the proper return value. Unit tests included.
llvm-svn: 129364
|
| |
|
|
|
|
|
| |
the initialized's protocol and yet clang warns.
objective-c issue, // rdar://9267196
llvm-svn: 129363
|
| |
|
|
|
|
|
|
|
| |
a crash when deserializing the AST for this:
typedef char (&R);
extern R &r;
llvm-svn: 129358
|
| |
|
|
|
|
| |
'new' expression.
llvm-svn: 129349
|
| |
|
|
|
|
| |
'++' pointer arithmetic.
llvm-svn: 129348
|
| |
|
|
|
|
|
|
| |
RTTI is disabled. Similarly, don't suggest throw or try as code
completion results when C++ exceptions are disabled. Fixes
<rdar://problem/9193560>.
llvm-svn: 129346
|
| |
|
|
|
|
|
|
| |
weak linkage. Also, fix a problem where global weak variables
with non-trivial initializers were getting guard variables, or at
least were checking for them and then crashing.
llvm-svn: 129342
|
| |
|
|
|
|
| |
Objective-C pointer type. Fixes <rdar://problem/9142559>.
llvm-svn: 129339
|
| |
|
|
| |
llvm-svn: 129337
|
| |
|
|
| |
llvm-svn: 129333
|
| |
|
|
|
|
|
|
|
| |
for __unknown_anytype resolution to destructively modify the AST. So that's
what it does now, which significantly simplifies some of the implementation.
Normal member calls work pretty cleanly now, and I added support for
propagating unknown-ness through &.
llvm-svn: 129331
|
| |
|
|
|
|
| |
in C++ method calls.
llvm-svn: 129308
|