| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
take precedence over command line options. Fixes PR10113.
llvm-svn: 147405
|
| |
|
|
|
|
|
|
|
| |
features needed for a particular module to be available. This allows
mixed-language modules, where certain headers only work under some
language variants (e.g., in C++, std.tuple might only be available in
C++11 mode).
llvm-svn: 147387
|
| |
|
|
|
|
|
|
| |
mark it as XFAIL: mingw32.
Mingw32 target has not supported integrated-as yet.
llvm-svn: 147386
|
| |
|
|
| |
llvm-svn: 147385
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Also temporarily remove the assumption from IR gen that we can emit IR for every
constant we can fold, since it isn't currently true in C++11, to fix PR11676.
Original comment from r147271:
constexpr: perform zero-initialization prior to / instead of performing a
constructor call when appropriate. Thanks to Eli for spotting this.
llvm-svn: 147384
|
| |
|
|
| |
llvm-svn: 147372
|
| |
|
|
| |
llvm-svn: 147363
|
| |
|
|
| |
llvm-svn: 147362
|
| |
|
|
|
|
|
| |
'is an extension'. The former is inappropriate and confusing when building with
-Werror/-pedantic-errors.
llvm-svn: 147357
|
| |
|
|
|
|
| |
enabled, but can be disabled separately. Move popcnt intrinsics to popcntintrin.h to match gcc.
llvm-svn: 147340
|
| |
|
|
| |
llvm-svn: 147331
|
| |
|
|
|
|
|
|
|
| |
with sse disabled.
x87 math evaluates everything with 80 bits precision, so we have to set FLT_EVAL_METHOD
to "2".
llvm-svn: 147311
|
| |
|
|
|
|
|
| |
It should not be supported in C++11, since that uses the C99 standard
library, in which 'a' is a format specifier.
llvm-svn: 147310
|
| |
|
|
|
|
|
| |
covers both declarations (@class) and definitions (@interface) of an
Objective-C class.
llvm-svn: 147299
|
| |
|
|
|
|
|
|
|
| |
when using -fvisibility-inlines-hidden. This matches gcc's behavior and
documentation.
Fixes PR11642.
llvm-svn: 147295
|
| |
|
|
| |
llvm-svn: 147290
|
| |
|
|
| |
llvm-svn: 147281
|
| |
|
|
| |
llvm-svn: 147275
|
| |
|
|
|
|
|
| |
longer have access to the source locations we need to produce the
'replace constexpr with const' fixits, so they're gone for now.
llvm-svn: 147273
|
| |
|
|
|
|
| |
constructor call when appropriate. Thanks to Eli for spotting this.
llvm-svn: 147271
|
| |
|
|
| |
llvm-svn: 147267
|
| |
|
|
| |
llvm-svn: 147265
|
| |
|
|
| |
llvm-svn: 147263
|
| |
|
|
|
|
|
| |
case they override virtual functions from a base class. Also fix -print-stats
counting of move assignment/construction.
llvm-svn: 147258
|
| |
|
|
| |
llvm-svn: 147253
|
| |
|
|
|
|
| |
other intrinsic headers.
llvm-svn: 147242
|
| |
|
|
| |
llvm-svn: 147240
|
| |
|
|
| |
llvm-svn: 147237
|
| |
|
|
| |
llvm-svn: 147236
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Explicit instantiations following specializations are no-ops and hence have
no PointOfInstantiation. That was done correctly in most cases, but for a
specialization -> instantiation decl -> instantiation definition chain, the
definition didn't realize that it was a no-op. Fix that.
Also, when printing diagnostics for these no-ops, get the diag location from
the decl name location.
Add many test cases, one of them not yet passing (but it failed the same way
before this change). Fixes http://llvm.org/pr11558 and more.
llvm-svn: 147225
|
| |
|
|
| |
llvm-svn: 147219
|
| |
|
|
|
|
|
|
| |
good parser error recovery and for not crashing.
We still have a accepts-invalid-code bug.
llvm-svn: 147216
|
| |
|
|
|
|
|
| |
building related objc ASTs which require a class definition AST.
These were uncovered when testing objc rewriter.
llvm-svn: 147210
|
| |
|
|
|
|
|
|
| |
found within that umbrella directory that were not actually included
by the umbrella header. They should either be referenced in the module
map or included by the umbrella header.
llvm-svn: 147207
|
| |
|
|
| |
llvm-svn: 147203
|
| |
|
|
|
|
|
| |
This works like described in http://drdobbs.com/blogs/cpp/231602010
Fixes http://llvm.org/PR11609
llvm-svn: 147202
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
set of (previously-canonical) declaration IDs to the module file, so
that future AST reader instances that load the module know which
declarations are merged. This is important in the fairly tricky case
where a declaration of an entity, e.g.,
@class X;
occurs before the import of a module that also declares that
entity. We merge the declarations, and record the fact that the
declaration of X loaded from the module was merged into the (now
canonical) declaration of X that we parsed.
llvm-svn: 147181
|
| |
|
|
| |
llvm-svn: 147179
|
| |
|
|
|
|
|
| |
class that comes from a different module file, make sure that we load
all of the pending declarations for the original declaration.
llvm-svn: 147168
|
| |
|
|
|
|
| |
the clang driver to enable this when assembling a .s file. rdar://9275556
llvm-svn: 147167
|
| |
|
|
| |
llvm-svn: 147156
|
| |
|
|
|
|
| |
expressoins of the form T{args}.
llvm-svn: 147155
|
| |
|
|
|
|
| |
overloading, initializer_list.
llvm-svn: 147145
|
| |
|
|
| |
llvm-svn: 147141
|
| |
|
|
|
|
| |
Robert Purves.
llvm-svn: 147139
|
| |
|
|
|
|
|
|
|
|
| |
\<newline><newline>
don't consume the second newline.
Thanks to David Blaikie for pointing out the crash!
llvm-svn: 147138
|
| |
|
|
| |
llvm-svn: 147137
|
| |
|
|
|
|
| |
definition would satisfy the constexpr requirements.
llvm-svn: 147128
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
declaration of that same class that either came from some other module
or occurred in the translation unit loading the module. In this case,
we need to merge the two redeclaration chains immediately so that all
such declarations have the same canonical declaration in the resulting
AST (even though they don't in the module files we've imported).
Focusing on Objective-C classes until I'm happy with the design, then
I'll both (1) extend this notion to other kinds of declarations, and
(2) optimize away this extra checking when we're not dealing with
modules. For now, doing this checking for PCH files/preambles gives us
better testing coverage.
llvm-svn: 147123
|
| |
|
|
|
|
| |
by string literals.
llvm-svn: 147120
|