| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
property type, for when getter may be a reference type.
// rdar://10188258 revised.
llvm-svn: 141966
|
| |
|
|
|
|
|
| |
attribute from the first declaration to later declarations. Fixes
<rdar://problem/10142572>.
llvm-svn: 141957
|
| |
|
|
| |
llvm-svn: 141955
|
| |
|
|
|
|
|
| |
within the template parameter list that may have changed now that we
know the current instantiation. Fixes <rdar://problem/10194295>.
llvm-svn: 141954
|
| |
|
|
|
|
| |
retrieve annotations from completion string.
llvm-svn: 141953
|
| |
|
|
|
|
| |
Serialization part will come later.
llvm-svn: 141950
|
| |
|
|
|
|
| |
Avoid possible infinite loop when iterating over an ObjCMethod's redeclarations.
llvm-svn: 141946
|
| |
|
|
| |
llvm-svn: 141921
|
| |
|
|
|
|
| |
// rdar://10239594
llvm-svn: 141915
|
| |
|
|
|
|
| |
This finds 2 bugs in chromium and 1 in hunspell, with 0 false positives.
llvm-svn: 141902
|
| |
|
|
|
|
|
|
| |
C++11 mode but keep their sources compatible with C++98. This patch implements
the -Wc++98-compat-variadic-templates sub-flag and -Wc++98-compat to include
it.
llvm-svn: 141898
|
| |
|
|
|
|
| |
cause of an uninitialized variable IFF there are other uses of that uninitialized variable. Fixes <rdar://problem/9259237>.
llvm-svn: 141881
|
| |
|
|
| |
llvm-svn: 141878
|
| |
|
|
|
|
| |
functions, e.g., (&f)(0). Fixes <rdar://problem/9803316>.
llvm-svn: 141877
|
| |
|
|
|
|
| |
attributes are found, propagate them to subsequent declarations.
llvm-svn: 141861
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
part of template argument deduction is ill-formed, we mark it as
invalid and treat it as a deduction failure. If we happen to find that
specialization again, treat it as a deduction failure rather than
silently building a call to the declaration.
Fixes PR11117, a marvelous bug where deduction failed after creating
an invalid specialization, causing overload resolution to pick a
different candidate. Then we performed a similar overload resolution
later, and happily picked the invalid specialization to
call... resulting in a silent link failure.
llvm-svn: 141809
|
| |
|
|
|
|
| |
the same behavior of gcc by keeping the attribute out of the function type.
llvm-svn: 141803
|
| |
|
|
| |
llvm-svn: 141793
|
| |
|
|
|
|
|
| |
ignore access entirely for it) and not to crash on assignment operator
templates. Fixes PR11110.
llvm-svn: 141777
|
| |
|
|
|
|
|
| |
The standard doesn't allow this, but mutable constexpr variables break the
semantics so badly that we can't reasonably accept them.
llvm-svn: 141768
|
| |
|
|
|
|
| |
property in the diagnostic.
llvm-svn: 141745
|
| |
|
|
|
|
|
|
|
|
|
| |
and DefaultFunctionArrayLvalueConversion. To prevent
significant regression for should-this-be-a-call fixits,
and to repair some such regression from the introduction of
bound member placeholders, make those placeholder checks
try to build calls appropriately. Harden the build-a-call
logic while we're at it.
llvm-svn: 141738
|
| |
|
|
| |
llvm-svn: 141686
|
| |
|
|
| |
llvm-svn: 141650
|
| |
|
|
| |
llvm-svn: 141645
|
| |
|
|
| |
llvm-svn: 141632
|
| |
|
|
|
|
| |
warning at function prototype scope.
llvm-svn: 141630
|
| |
|
|
|
|
|
|
| |
The main motivation was to do typo correction in C++ "new" statements,
though picking it up in other places where type names are expected was
pretty much a freebie.
llvm-svn: 141621
|
| |
|
|
| |
llvm-svn: 141612
|
| |
|
|
| |
llvm-svn: 141611
|
| |
|
|
| |
llvm-svn: 141610
|
| |
|
|
| |
llvm-svn: 141609
|
| |
|
|
|
|
| |
class member. Fixes PR11108.
llvm-svn: 141600
|
| |
|
|
|
|
|
| |
to check whether the constructor is accessible. Fixes
<rdar://problem/10202900>.
llvm-svn: 141588
|
| |
|
|
|
|
|
|
|
|
| |
in multiple subexpressions. This breaks the tree structure
of the AST and completely breaks the CFG invariants.
Patch by Jim Goodnow II and reviewed by Richard Smith!
llvm-svn: 141586
|
| |
|
|
|
|
| |
nonatomic. // rdar://10260017
llvm-svn: 141580
|
| |
|
|
|
|
|
| |
where we can't expand (i.e., multi-level substitution), be sure to
substitute the pack with its level-reduced pack. Fixes PR10230.
llvm-svn: 141568
|
| |
|
|
|
|
|
|
|
|
|
| |
- Remodel Expr::EvaluateAsInt to behave like the other EvaluateAs* functions,
and add Expr::EvaluateKnownConstInt to capture the current fold-or-assert
behaviour.
- Factor out evaluation of bitfield bit widths.
- Fix a few places which would evaluate an expression twice: once to determine
whether it is a constant expression, then again to get the value.
llvm-svn: 141561
|
| |
|
|
|
|
|
| |
it might be wrong for other instantiations of the same function
template. Fixes PR10801.
llvm-svn: 141559
|
| |
|
|
| |
llvm-svn: 141555
|
| |
|
|
|
|
| |
for future work.
llvm-svn: 141553
|
| |
|
|
|
|
| |
subexpressions. Fixes PR10291.
llvm-svn: 141552
|
| |
|
|
| |
llvm-svn: 141549
|
| |
|
|
|
|
|
|
|
|
| |
constexpr constructor templates. Such checking is optional, and currently hard
to get right since clang doesn't generate implicit member initializers until
instantiation (even for non-dependent members).
This is needed for clang to accept libstdc++ from g++4.6 in c++0x mode.
llvm-svn: 141547
|
| |
|
|
|
|
| |
qualifier itself is invalid. Crasher noticed by Fariborz.
llvm-svn: 141544
|
| |
|
|
|
|
|
|
| |
initializer to update the type of the declaration. For example, this
allows us to determine the size of an incomplete array from its
initializer. Fixes PR10288.
llvm-svn: 141543
|
| |
|
|
|
|
|
| |
declarator, so that the declarator is in scope for the
initializer. Fixes PR9989.
llvm-svn: 141539
|
| |
|
|
|
|
| |
!. Fixes PR9865.
llvm-svn: 141537
|
| |
|
|
|
|
|
|
|
|
|
| |
Begin with just default constructors. One note is that as a side effect
of this, a conformance test was removed on the basis that this is almost
certainly a defect as with most of union initialization. As it is, clang
does not implement union initialization close to the standard as it's
quite broken as written. I hope to write a paper addressing the issues
eventually.
llvm-svn: 141528
|
| |
|
|
|
|
|
| |
defining a friend function with a qualified name or in a local
class. Fixes PR9853.
llvm-svn: 141524
|