| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This is more efficient as it's all done at once at the end of the TU.
This could still get expensive, so a flag is provided to disable it. As
an added bonus, the diagnostics will now print out a cycle.
The PCH test is XFAILed because we currently can't deal with a note
emitted in the header and I, being tired, see no other way to verify the
serialization of delegating constructors. We should probably address
this problem /somehow/ but no good solution comes to mind.
llvm-svn: 130836
|
| |
|
|
| |
llvm-svn: 130833
|
| |
|
|
| |
llvm-svn: 130830
|
| |
|
|
| |
llvm-svn: 130828
|
| |
|
|
|
|
|
|
| |
if they match that production, i.e. if they're template type parameters
or decltypes (or, as an obvious case not yet described in the ABI document,
if they're template template parameters applied to template arguments).
llvm-svn: 130824
|
| |
|
|
| |
llvm-svn: 130822
|
| |
|
|
|
|
| |
declarations.
llvm-svn: 130821
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
tag, filter out those ambiguous names that we found if they aren't
within the declaration context where this newly-defined tag will be
visible.
This is basically a hack, because we really need to fix the lookup of
tag declarations in this case to not find things it
shouldn't. However, it's better than what we had before, and it fixes
<rdar://problem/9168556>.
llvm-svn: 130810
|
| |
|
|
|
|
|
|
| |
which determines whether a particular file is actually a header that
is intended to be guarded from multiple inclusions within the same
translation unit.
llvm-svn: 130808
|
| |
|
|
|
|
|
|
|
| |
create an ASTUnit
from a CompilerInvocation along with an ASTFrontendAction to invoke, and without all the goo
about the precompiled preamble.
llvm-svn: 130805
|
| |
|
|
|
|
|
|
|
|
| |
the body of a delegating constructor call.
This means that the delegating constructor implementation should be
complete and correct, though there are some rough edges (diagnostic
quality with the cycle detection and using a deleted destructor).
llvm-svn: 130803
|
| |
|
|
|
|
|
| |
the followup data member in an ms_struct struct.
// rdar:// 8823265
llvm-svn: 130795
|
| |
|
|
|
|
|
| |
lib/Sema/SemaDeclCXX.cpp to avoid getting stuck in an infinite loop. See
the comment for more explanation.
llvm-svn: 130788
|
| |
|
|
|
|
|
|
| |
checking both the source and the destination operands, renaming the
warning group to -Wnon-pod-memaccess and tweaking the diagnostic text
in the process.
llvm-svn: 130786
|
| |
|
|
|
|
| |
structs. // rdar://8823265
llvm-svn: 130783
|
| |
|
|
|
|
| |
Material bugfixes to come this afternoon.
llvm-svn: 130782
|
| |
|
|
|
|
|
| |
- a default-on warning for pointers to dynamic classes (= classes with vtables)
- a default-off warning for other non-POD types
llvm-svn: 130781
|
| |
|
|
| |
llvm-svn: 130776
|
| |
|
|
| |
llvm-svn: 130775
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
parameters on the floor in certain cases:
class X {
template <typename T> friend typename A<T>::Foo;
};
This was parsed as a *non* template friend declaration some how, and
received an ExtWarn. Fixing the parser to actually provide the template
parameters to the freestanding declaration parse triggers the code which
specifically looks for such constructs and hard errors on them.
Along the way, this prevents us from trying to instantiate constructs
like the above inside of a outer template. This is important as loosing
the template parameters means we don't have a well formed declaration
and template instantiation will be unable to rebuild the AST. That fixes
a crash in the GCC test suite.
llvm-svn: 130772
|
| |
|
|
|
|
| |
'memset' with external linkage.
llvm-svn: 130770
|
| |
|
|
|
|
| |
changes need to be made to properly support modeling of it since it potentially leaves strings non-null terminated.
llvm-svn: 130758
|
| |
|
|
|
|
| |
breaks tests.
llvm-svn: 130753
|
| |
|
|
| |
llvm-svn: 130750
|
| |
|
|
|
|
|
|
| |
has the same size as the APInt passed in. Also, updated the comments around IntegerLiteral.
Changed the integer type that range-based for-loops used. Switched to pointer difference type, which satisfies the new assert in IntegerLiteral.
llvm-svn: 130739
|
| |
|
|
| |
llvm-svn: 130736
|
| |
|
|
|
|
| |
fix SingleSource/UnitTests/block-copied-in-cxxobj compile time crash.
llvm-svn: 130734
|
| |
|
|
|
|
| |
calling C++ methods. This is a temporary solution to prune false positives until we have a general story using annotations.
llvm-svn: 130726
|
| |
|
|
|
|
|
|
| |
force align the stack to the backend.
Fixes rdar://9289631
llvm-svn: 130725
|
| |
|
|
| |
llvm-svn: 130723
|
| |
|
|
| |
llvm-svn: 130719
|
| |
|
|
|
|
| |
rdar://problem/8139919 . This shouldn't make much of a difference at -O3, but should substantially reduce the number of generated memcpy's at -O0.
llvm-svn: 130717
|
| |
|
|
|
|
| |
arguments to C++ constructors. This is a stop-gap measure for Objective-C++ code that uses smart pointers to manage reference counts.
llvm-svn: 130711
|
| |
|
|
|
|
| |
compatable
llvm-svn: 130710
|
| |
|
|
|
|
| |
creating substrings if necessary and calling the appropriate StringRef::compare/compare_lower().
llvm-svn: 130708
|
| |
|
|
|
|
|
|
|
|
|
|
| |
provides proper support for. This was caught by
-Wundefined-reinterpret-cast, and I think a reasonable case for it to
warn on.
Also use is<...> instead of dyn_cast<...> when the result isn't needed.
This whole thing should probably switch to using UsuallyTinyPtrVector.
llvm-svn: 130707
|
| |
|
|
|
|
| |
by Richard Trieu!
llvm-svn: 130703
|
| |
|
|
|
|
| |
eventually gain more members). Working towards modifying call emission to avoid unnecessary copies.
llvm-svn: 130700
|
| |
|
|
|
|
| |
change.
llvm-svn: 130699
|
| |
|
|
|
|
|
|
| |
this only for
OS X, but it is probably not all that important.
llvm-svn: 130697
|
| |
|
|
| |
llvm-svn: 130696
|
| |
|
|
|
|
|
| |
"X:\foo\bar") with -isysroot. test/PCH/reloc.c can pass.
FIXME: We should consider better isysroot scheme on Win32 hosts.
llvm-svn: 130683
|
| |
|
|
|
|
|
|
|
| |
Invalid that was never read from again, causing non-type-template-parms to be
marked valid when in fact they weren't.
This was caught by GCC 4.6's -Wunused-but-set-variable warning.
llvm-svn: 130680
|
| |
|
|
|
|
|
|
|
| |
Devang, can we remove this call entirely? If I try that, "make check" passes
but the call has a side-effect of ensuring that the block's context exists in
the debug info. getContextDescriptor() is used in a void context for that side-
effect elsewhere in this file. Please take a look!
llvm-svn: 130679
|
| |
|
|
| |
llvm-svn: 130678
|
| |
|
|
|
|
| |
callers. Shockingly enough, *there are none*!
llvm-svn: 130677
|
| |
|
|
| |
llvm-svn: 130676
|
| |
|
|
|
|
| |
of the QualifierLoc, and that's all we need to import now.
llvm-svn: 130675
|
| |
|
|
| |
llvm-svn: 130674
|
| |
|
|
|
|
| |
functionality change.
llvm-svn: 130673
|