| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
functions, but not for friend types.
Reviewed by wan
llvm-svn: 118323
|
| |
|
|
|
|
|
|
|
|
|
| |
The callback info for #if/#elif is not great -- ideally it would give
us a list of tokens in the #if, or even better, a little parse tree.
But that's a lot more work. Instead, clients can retokenize using
Lexer::LexFromRawLexer().
Reviewed by nlewycky.
llvm-svn: 118318
|
| |
|
|
|
|
| |
make sure to setup the instantiation stack. Fixes rdar://8620775 & http://llvm.org/PR8234
llvm-svn: 118314
|
| |
|
|
|
|
|
|
| |
of its parent context, be sure to update the parent-context pointer
after instantiation. Fixes two anonymous-union instantiation issues in
<rdar://problem/8635664>.
llvm-svn: 118313
|
| |
|
|
|
|
|
|
|
|
|
| |
of that field. Otherwise, we can end up building and later trying to
instantiate a dependent member initializer that will fail at
instantiation time.
Unfortunately, I've only managed to trigger this bug with very large
sources, so there's no test case :(
llvm-svn: 118306
|
| |
|
|
| |
llvm-svn: 118305
|
| |
|
|
|
|
|
|
| |
e.g. #pragma clang diagnostic can be used in a PCH.
Fixes rdar://8435969.
llvm-svn: 118303
|
| |
|
|
| |
llvm-svn: 118302
|
| |
|
|
|
|
|
|
| |
CXXConstructorExpr/CXXTemporaryObjectExpr references the constructor
it calls. Then, tweak clang_getCursor() to prefer such a call over a
type reference to the type being called.
llvm-svn: 118297
|
| |
|
|
| |
llvm-svn: 118293
|
| |
|
|
|
|
|
| |
qualified ObjC pointer types in its argument list.
// rdar: //8608902
llvm-svn: 118286
|
| |
|
|
|
|
| |
using "safety" threads.
llvm-svn: 118278
|
| |
|
|
| |
llvm-svn: 118276
|
| |
|
|
|
|
|
| |
thread, primarily to get a larger stack.
- Yes, I feel dirty.
llvm-svn: 118274
|
| |
|
|
| |
llvm-svn: 118273
|
| |
|
|
|
|
| |
std::nullptr_t to bool is better than one than does.
llvm-svn: 118269
|
| |
|
|
| |
llvm-svn: 118259
|
| |
|
|
|
|
| |
making something up. Fixes PR8129.
llvm-svn: 118258
|
| |
|
|
|
|
| |
found. This should fix the errors seen on the bot.
llvm-svn: 118246
|
| |
|
|
|
|
| |
check that the TargetNestedNameDecl is the same first.
llvm-svn: 118239
|
| |
|
|
| |
llvm-svn: 118238
|
| |
|
|
| |
llvm-svn: 118236
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
e.g. for:
template <int i> class A {
class B *g;
};
'class B' has the template as lexical context but semantically it is
introduced in namespace scope.
Fixes rdar://8611125 & http://llvm.org/PR8505
llvm-svn: 118235
|
| |
|
|
|
|
| |
pointer constant.
llvm-svn: 118234
|
| |
|
|
|
|
| |
with system specific stuff.
llvm-svn: 118224
|
| |
|
|
|
|
| |
preferably). Good thing c-index-test is written in C!!!!
llvm-svn: 118223
|
| |
|
|
| |
llvm-svn: 118212
|
| |
|
|
|
|
|
|
|
| |
or dependent specializations, rip apart the dependent name/dependent
specialization to recanonicalize its pieces, because
nested-name-specifiers store "dependent-type::identifier" differently
than types do. Fixes PR7419.
llvm-svn: 118211
|
| |
|
|
|
|
| |
is a objc qualified class type. // rdar: //8608902
llvm-svn: 118208
|
| |
|
|
|
|
|
| |
block pointer type arguments. Partial fix for
// rdar: //8608902
llvm-svn: 118205
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When -working-directory is passed in command line, file paths are resolved relative to the specified directory.
This helps both when using libclang (where we can't require the user to actually change the working directory)
and to help reproduce test cases when the reproduction work comes along.
--FileSystemOptions is introduced which controls how file system operations are performed (currently it just contains
the working directory value if set).
--FileSystemOptions are passed around to various interfaces that perform file operations.
--Opening & reading the content of files should be done only through FileManager. This is useful in general since
file operations will be abstracted in the future for the reproduction mechanism.
FileSystemOptions is independent of FileManager so that we can have multiple translation units sharing the same
FileManager but with different FileSystemOptions.
Addresses rdar://8583824.
llvm-svn: 118203
|
| |
|
|
| |
llvm-svn: 118202
|
| |
|
|
|
|
| |
PR7702.
llvm-svn: 118181
|
| |
|
|
|
|
|
|
|
| |
the sets of available conversions for the first and second arguments
separate. This is apparently the indent of C++ [over.built], and
reduces the number of overload candidates generated, eliminating some
ambiguities. Fixes PR8477.
llvm-svn: 118178
|
| |
|
|
| |
llvm-svn: 118172
|
| |
|
|
|
|
|
| |
libclang with both clang -fblocks and gcc (no blocks support). Only exposed in
the header to compilers that do have blocks support.
llvm-svn: 118170
|
| |
|
|
| |
llvm-svn: 118166
|
| |
|
|
| |
llvm-svn: 118165
|
| |
|
|
|
|
|
|
|
| |
that are not handled properly:
1. For statement: const C& c = C(0) ?: C(1) destructors generated for condition will not differ from those generated for case without prolonged lifetime of temporary,
2. There will be no destructor for constant reference member bound to temporary at the exit from constructor.
llvm-svn: 118158
|
| |
|
|
| |
llvm-svn: 118150
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
distros listed by running
gcc main.o -o main
g++ main.o -o main
gcc main.o -o main -static
g++ main.o -o main -static
gcc f.o -o f.so -shared
g++ f.o -o f.so -shared
and comparing the ld line with the one created by clang. I also added
-m32/m64 in distros that support it.
While I tested many distros, there will always be more. If you are hit by this
it should be somewhat easy to add your distro. If you are in a hurry, do
revert this, but please inform how to detect you distro and the ld command
lines produced by the above gcc invocations. Most distros have some patches
on gcc :-(
llvm-svn: 118149
|
| |
|
|
|
|
| |
constraint it's invalid. Fixes PR3905.
llvm-svn: 118146
|
| |
|
|
|
|
| |
constraint. Fixes PR3904.
llvm-svn: 118145
|
| |
|
|
|
|
|
|
| |
parameter name.
Fixes PR8012.
llvm-svn: 118138
|
| |
|
|
|
|
|
|
|
| |
ensuring that they cover all of their child nodes. There's still a
clang_getCursor()-related issue with CXXFunctionalCastExprs with
CXXConstructExprs as children (see FIXME in the test case); I'll look
at that separately.
llvm-svn: 118132
|
| |
|
|
| |
llvm-svn: 118111
|
| |
|
|
|
|
|
|
|
|
|
| |
declared
within an @implementation, but we have no way to record that information in the AST.
This may cause CursorVisitor to miss these Decls when doing a AST walk.
Fixes <rdar://problem/8595462>.
llvm-svn: 118109
|
| |
|
|
| |
llvm-svn: 118108
|
| |
|
|
| |
llvm-svn: 118095
|
| |
|
|
|
|
|
| |
expression is a dependent expression.
// rdar: // 8620524 and PR7851
llvm-svn: 118066
|