| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
on that type. Fixes several problems in Boost.Interprocess.
llvm-svn: 102339
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
method parameter, provide a note pointing at the parameter itself so
the user does not have to manually look for the function/method being
called and match up parameters to arguments. For example, we now get:
t.c:4:5: warning: incompatible pointer types passing 'long *' to
parameter of
type 'int *' [-pedantic]
f(long_ptr);
^~~~~~~~
t.c:1:13: note: passing argument to parameter 'x' here
void f(int *x);
^
llvm-svn: 102038
|
| |
|
|
|
|
|
|
|
|
| |
therefore not creating ElaboratedTypes, which are still pretty-printed
with the written tag).
Most of these testcase changes were done by script, so don't feel too
sorry for my fingers.
llvm-svn: 98149
|
| |
|
|
|
|
|
| |
always come from the primary template, so gather the instantiation
template arguments from the primary template.
llvm-svn: 95380
|
| |
|
|
|
|
|
|
| |
why the candidate is non-viable. There's a lot we can do to improve this, but
it's a good start. Further improvements should probably be integrated with the
bad-initialization reporting routines.
llvm-svn: 93277
|
| |
|
|
|
|
|
|
|
| |
as parts of overload sets. Also, refer to constructors as 'constructors'
rather than functions.
Adjust a lot of tests.
llvm-svn: 92832
|
| |
|
|
|
|
|
|
| |
the default argument so that we're sure to mark any referenced
declarations. This gets us another little step closer to fixing
PR5810.
llvm-svn: 92078
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
member function thereof), perform the template instantiation each time
the default argument is needed. This ensures that
(1) We get different CXXTemporary objects for each instantiation, and
(2) Any other instantiations or definitions triggered by the
instantiation of the default argument expression are guaranteed to
happen; previously, they might have been suppressed, e.g., because
they happened in an unevaluated context.
This fixes the majority of PR5810. However, it does not address the
problem where we may have multiple uses of the same CXXTemporary
within an expression when the temporary came from a non-instantiated
default argument expression.
llvm-svn: 92015
|
| |
|
|
| |
llvm-svn: 91883
|
| |
|
|
|
|
|
|
|
|
| |
InitializationSequence. Specially, switch initialization of a C++
class type (either copy- or direct-initialization).
Also, make sure that we create an elidable copy-construction when
performing copy initialization of a C++ class variable. Fixes PR5826.
llvm-svn: 91750
|
| |
|
|
|
|
|
|
|
| |
- This is designed to make it obvious that %clang_cc1 is a "test variable"
which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it
can be useful to redefine what gets run as 'clang -cc1' (for example, to set
a default target).
llvm-svn: 91446
|
| |
|
|
|
|
| |
overloaded operator().
llvm-svn: 86581
|
| |
|
|
|
|
| |
PR4301. Doug, please double-check my assumptions. Read the PR for more details.
llvm-svn: 86465
|
| |
|
|
|
|
| |
initialized implicitly in constructors so that default arguments etc are set correctly. Fixes PR5283.
llvm-svn: 85510
|
| |
|
|
|
|
|
| |
complain about specializations of member functions that are not
definitions. Fixes PR4995.
llvm-svn: 82159
|
| |
|
|
|
|
|
|
|
|
| |
when we are not instantiating the corresponding "current
instantiation." This happens, e.g., when we are instantiating a
declaration reference that refers into the "current instantiation" but
occurs in a default function argument. The libstdc++ vector default
constructor now instantiates properly.
llvm-svn: 82069
|
| |
|
|
|
|
|
|
|
|
|
| |
- Diagnose attempts to add default arguments to templates (or member
functions of templates) after the initial declaration (DR217).
- Improve diagnostics when a default argument is redefined. Now, the
note will always point at the place where the default argument was
previously defined, rather than pointing to the most recent
declaration of the function.
llvm-svn: 81548
|
| |
|
|
|
|
|
|
|
| |
for (unsigned i = numargs; i < NumArgs; ++i)
Args[0] = 0;
;)
llvm-svn: 81123
|
| |
|
|
|
|
|
| |
destroying the CXXConstructExpr.", this is causing test failures across the
board.
llvm-svn: 81100
|
| |
|
|
|
|
| |
destroying the CXXConstructExpr.
llvm-svn: 81096
|
| |
|
|
| |
llvm-svn: 81063
|
| |
|
|
| |
llvm-svn: 81062
|
| |
|
|
|
|
| |
template
llvm-svn: 79989
|
| |
|
|
|
|
| |
the parameter type before checking that the expression is a valid initializer.
llvm-svn: 79986
|
| |
|
|
| |
llvm-svn: 79984
|
|
|
llvm-svn: 79972
|