| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
speeding up the testcase in PR3810 by 60%.
llvm-svn: 67431
|
| |
|
|
|
|
| |
other code presumably) by 4.3%
llvm-svn: 67430
|
| |
|
|
|
|
| |
This speeds up a testcase in 3810 by ~16%.
llvm-svn: 67429
|
| |
|
|
|
|
|
| |
code; and don't return an error code when -### is present, even if
errors occur.
llvm-svn: 67425
|
| |
|
|
|
|
| |
it a hard error.
llvm-svn: 67424
|
| |
|
|
| |
llvm-svn: 67423
|
| |
|
|
|
|
|
|
|
|
|
| |
its vectors based on the subobject type we're initializing and the
(unstructured) initializer list. This eliminates some malloc thrashing
when parsing initializers (from 117 vector reallocations down to 0
when parsing Cocoa.h). We can't always pre-allocate the right amount
of storage, since designated initializers can cause us to initialize
in non-predictable patterns.
llvm-svn: 67421
|
| |
|
|
|
|
|
|
|
|
| |
- <rdar://problem/6669441> ccc doesn't handle assembler-with-cpp
semantics correctly (but clang supports it)
- This is sad, because it requires a fairly useless target
hook. C'est la vie.
llvm-svn: 67418
|
| |
|
|
| |
llvm-svn: 67417
|
| |
|
|
|
|
|
| |
simplify the parsing and action interface for designated
initializers.
llvm-svn: 67415
|
| |
|
|
|
|
|
| |
variant of DiagnosticBuilder that emits the template instantiation
backtrace when needed.
llvm-svn: 67413
|
| |
|
|
| |
llvm-svn: 67406
|
| |
|
|
|
|
|
|
| |
allow non-literal format strings that are variables that (a) permanently bind to
a string constant and (b) whose string constants are resolvable within the same
translation unit.
llvm-svn: 67404
|
| |
|
|
| |
llvm-svn: 67402
|
| |
|
|
| |
llvm-svn: 67397
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a #include directive around the command line buffer so that
diagnostics generated from -include directives get diagnostics
like:
In file included from <built-in>:98:
In file included from <command line>:3:
./t.h:2:1: warning: type specifier missing, defaults to 'int'
b;
^
llvm-svn: 67396
|
| |
|
|
|
|
|
|
| |
- Conjure symbols at '--' and '++' unary operations
- Add utility method SVal::GetConjuredSymbolVal() and constify some arguments
along the way.
llvm-svn: 67395
|
| |
|
|
| |
llvm-svn: 67394
|
| |
|
|
| |
llvm-svn: 67393
|
| |
|
|
|
|
|
| |
when there is actually a property declaration
used in the dot-syntax.
llvm-svn: 67391
|
| |
|
|
|
|
| |
constants.
llvm-svn: 67390
|
| |
|
|
| |
llvm-svn: 67389
|
| |
|
|
| |
llvm-svn: 67388
|
| |
|
|
|
|
| |
cached tokens. This is for use with -include-pth.
llvm-svn: 67385
|
| |
|
|
|
|
| |
completely there with accurately modeling autorelease pools.
llvm-svn: 67384
|
| |
|
|
|
|
| |
in a property dot-syntax notation.
llvm-svn: 67382
|
| |
|
|
|
|
| |
- Based on patch from Pieter de Bie; thanks!
llvm-svn: 67379
|
| |
|
|
|
|
|
|
| |
where
clang was defining "i386" even when in non-gnu mode.
llvm-svn: 67378
|
| |
|
|
| |
llvm-svn: 67377
|
| |
|
|
| |
llvm-svn: 67376
|
| |
|
|
|
|
| |
can have language-specific defines.
llvm-svn: 67375
|
| |
|
|
|
|
|
|
| |
diagnostics.
- This ensures that the whole argument and values are printed,
instead of just the option name.
llvm-svn: 67366
|
| |
|
|
|
|
| |
times.
llvm-svn: 67365
|
| |
|
|
| |
llvm-svn: 67362
|
| |
|
|
| |
llvm-svn: 67356
|
| |
|
|
| |
llvm-svn: 67355
|
| |
|
|
|
|
|
|
| |
braces. We now build the appropriate fully-structured initializer list
for such things. Per PR3618, verified that we're getting the right
code generation.
llvm-svn: 67353
|
| |
|
|
| |
llvm-svn: 67350
|
| |
|
|
|
|
| |
testing) even with -pipe on.
llvm-svn: 67348
|
| |
|
|
|
|
| |
in the tree for a day or so longer.
llvm-svn: 67346
|
| |
|
|
|
|
| |
original source file (if any) that was used to generate the PTH cache.
llvm-svn: 67343
|
| |
|
|
|
|
| |
there is a previous declaration marked "static". This fixes PR3645.
llvm-svn: 67336
|
| |
|
|
|
|
|
|
|
|
| |
diagnostics following those notes.
Make exceeding the template instantiation depth a fatal error.
Thanks to Daniel for pointing out the problem!
llvm-svn: 67320
|
| |
|
|
| |
llvm-svn: 67316
|
| |
|
|
|
|
|
|
| |
dot-syntax expression after earching the list of protocols
in the qualified-id, must keep searching the protocol list
of each of the protocols in the list.
llvm-svn: 67314
|
| |
|
|
|
|
|
|
|
|
| |
F f;
where F is a typedef of a function type, then the function "f" has a
prototype. This is a slight tweak to Chris's suggested fix in
PR3817. Fixes PR3817 and PR3840.
llvm-svn: 67313
|
| |
|
|
|
|
| |
- Apologies for commits w/o test cases; they are coming.
llvm-svn: 67310
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
dependent qualified-ids such as
Fibonacci<N - 1>::value
where N is a template parameter. These references are "unresolved"
because the name is dependent and, therefore, cannot be resolved to a
declaration node (as we would do for a DeclRefExpr or
QualifiedDeclRefExpr). UnresolvedDeclRefExprs instantiate to
DeclRefExprs, QualifiedDeclRefExprs, etc.
Also, be a bit more careful about keeping only a single set of
specializations for a class template, and instantiating from the
definition of that template rather than a previous declaration. In
general, we need a better solution for this for all TagDecls, because
it's too easy to accidentally look at a declaration that isn't the
definition.
We can now process a simple Fibonacci computation described as a
template metaprogram.
llvm-svn: 67308
|
| |
|
|
|
|
| |
- PR3818.
llvm-svn: 67297
|
| |
|
|
| |
llvm-svn: 67296
|