- Jul 23, 2013
-
-
Adrian Prantl authored
rdar://problem/14386148 llvm-svn: 186898
-
Fariborz Jahanian authored
protocols by ignoring cases where all protocol properties and methods are optional. llvm-svn: 186895
-
Adrian Prantl authored
Fixes rdar://problem/14386148 llvm-svn: 186894
-
Eli Friedman authored
llvm-svn: 186891
-
Eli Friedman authored
getLocForEndOfToken() isn't guaranteed to succeed; if it doesn't, make sure we do something sane. Fixes PR16673. I'm not sure how to write a testcase for this short of grepping through the diagnostic output. llvm-svn: 186889
-
- Jul 22, 2013
-
-
Enea Zaffanella authored
llvm-svn: 186872
-
Douglas Gregor authored
The headers in the compiler's own resource include directory are system headers, which means we don't stat() them eagerly when loading a module. Use module.map as a proxy for these headers and the compiler itself. Fixes <rdar://problem/13856838>. llvm-svn: 186870
-
Bill Wendling authored
llvm-svn: 186864
-
Enea Zaffanella authored
Warning should be emitted only for InitListExpr nodes. llvm-svn: 186859
-
Fariborz Jahanian authored
have shift/bitwise operators or are power of 2. llvm-svn: 186856
-
Argyrios Kyrtzidis authored
[arcmt] Only disable ARC in the second compilation if there were actually ARC errors in the checking phase. rdar://14490204 llvm-svn: 186850
-
Richard Smith authored
llvm-svn: 186849
-
Richard Smith authored
llvm-svn: 186848
-
Aaron Ballman authored
llvm-svn: 186847
-
Daniel Jasper authored
After the first operation, the buffer contents has changed and thus all other operations would be invalid. Executing the operations in reversed order should fix this. llvm-svn: 186840
-
Samuel Benzaquen authored
Summary: Add support for overloaded matchers. This composes with other features, like supporting polymorphic matchers. Reviewers: klimek CC: cfe-commits, revane Differential Revision: http://llvm-reviews.chandlerc.com/D1188 llvm-svn: 186836
-
NAKAMURA Takumi authored
warning: initializer for aggregate is not a compile-time constant [-Wc99-extensions] llvm-svn: 186833
-
Reid Kleckner authored
Based on Peter Collingbourne's destructor patches. Prior to this change, clang was considering ?1 to be the complete destructor and the base destructor, which was wrong. This lead to crashes when clang tried to emit two LLVM functions with the same name. In this ABI, TUs with non-inline dtors might not emit a complete destructor. They are emitted as inline thunks in TUs that need them, and they always delegate to the base dtors of the complete class and its virtual bases. This change uses the DeferredDecls machinery to emit complete dtors as needed. Currently in clang try body destructors can catch exceptions thrown by virtual base destructors. In the Microsoft C++ ABI, clang may not have the destructor definition, in which case clang won't wrap the virtual virtual base destructor calls in a try-catch. Diagnosing this in user code is TODO. Finally, for classes that don't use virtual inheritance, MSVC always calls the base destructor (?1) directly. This is a useful code size optimization that avoids emitting lots of extra thunks or aliases. Implementing it also means our existing tests continue to pass, and is consistent with MSVC's output. We can do the same for Itanium by tweaking GetAddrOfCXXDestructor, but it will require further testing. Reviewers: rjmccall CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1066 llvm-svn: 186828
-
Reid Kleckner authored
Now we can save GD.getDecl() in D and shorten some casts. llvm-svn: 186826
-
Daniel Jasper authored
llvm-svn: 186825
-
Reid Kleckner authored
llvm-svn: 186824
-
Enea Zaffanella authored
when initializing aggregate/union types, no matter if static or not. llvm-svn: 186817
-
Enea Zaffanella authored
No functionality change. In Sema helper functions: * renamed isTypeName as HasTypenameKeyword In UsingDecl: * renamed get/setUsingLocation to get/setUsingLoc * renamed is/setTypeName as has/setTypename llvm-svn: 186816
-
Robert Wilhelm authored
llvm-svn: 186807
-
Richard Smith authored
any default template arguments, not if it inherits some. llvm-svn: 186804
-
Richard Smith authored
A constructor for an abstract class does not call constructors for virtual base classes, so it is not an error if no initializer is present for the virtual base and the virtual base cannot be default initialized. Also provide a (disabled by default, for now) warning for the case where a virtual base class's initializer is ignored in an abstract class's constructor, and address a defect in DR257 where it was not carried through to C++11's rules for implicit deletion of special member functions. Based on a patch by Maurice Bos. llvm-svn: 186803
-
NAKAMURA Takumi authored
llvm-svn: 186802
-
Richard Smith authored
llvm-svn: 186800
-
Richard Smith authored
optimize, to follow the permissions granted in N3664. Under those rules, only calls generated by new-expressions and delete-expressions are permitted to be optimized, and direct calls to ::operator new and ::operator delete must be treated as normal calls. llvm-svn: 186799
-
Craig Topper authored
llvm-svn: 186797
-
- Jul 21, 2013
-
-
Craig Topper authored
Replace 'unsigned short' with 'uint16_t' in a packed data structure for consistency with other fields and to be explicit about bit count. llvm-svn: 186796
-
Craig Topper authored
llvm-svn: 186795
-
Robert Wilhelm authored
llvm-svn: 186794
-
Lubos Lunak authored
llvm-svn: 186793
-
Daniel Jasper authored
With this fix, only changed regions will be replaced in vim's buffer. Thereby, marks should mostly be left intact. Furthermore, this is a better fix for the performance problem in conjunction with 'foldmethod=syntax' (see r186660). llvm-svn: 186789
-
- Jul 20, 2013
-
-
Enea Zaffanella authored
llvm-svn: 186770
-
Richard Smith authored
implicit conversion sequence. llvm-svn: 186769
-
Richard Smith authored
llvm-svn: 186768
-
Lubos Lunak authored
The functionality is equivalent to the GCC attribute. Variables of tagged types will be warned about as unused if they are not used in any way except for possible (even non-trivial) ctors/dtors called. Useful for tagging classes like std::string (which is not part of this commit). llvm-svn: 186765
-
Lubos Lunak authored
llvm-svn: 186764
-