| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
a qualified name. We weren't checking for an empty
nested-name-specifier when dealing with friend class templates
(although we were checking in the other places where we deal with this
paragraph). Fixes a Boost.Serialization showstopper.
llvm-svn: 101724
|
|
|
|
|
|
|
|
| |
Remove -faccess-control from -cc1; add -fno-access-control.
Make the driver pass -fno-access-control by default.
Update a bunch of tests to be correct under access control.
llvm-svn: 100880
|
|
|
|
| |
llvm-svn: 99979
|
|
|
|
|
|
| |
cases.
llvm-svn: 97134
|
|
|
|
|
|
|
|
|
|
| |
as a type or scope token if the next token requires it.
This eliminates a lot of redundant lookups in C++, but there's room for
improvement; a better solution would do a single lookup whose kind and
results would be passed through the parser.
llvm-svn: 92930
|
|
|
|
|
|
| |
standard the last time. Fixes PR5766.
llvm-svn: 91493
|
|
|
|
|
|
|
| |
clang ' or ' clang -cc1 ' or ' clang-cc ' in test lines (by substituting them to
garbage).
llvm-svn: 91460
|
|
|
|
|
|
|
|
|
| |
- 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
|
|
|
|
| |
llvm-svn: 91099
|
|
|
|
|
|
|
| |
doing any of the other redeclaration checks. We were missing a few cases.
Fixes PR 5752.
llvm-svn: 91096
|
|
|
|
|
|
|
|
|
| |
test case.
Surprisingly, we *do* diagnose one of them. Since we don't really track scopes into
instantiation, this has to signal some kind of bug.
llvm-svn: 91063
|
|
|
|
|
|
|
|
| |
declaration. Rename note_using_decl to note_using, which is possibly less confusing.
Add a test for non-class-scope using decl collisions and be sure to note the case
we can't diagnose yet.
llvm-svn: 91057
|
|
|
|
|
|
|
|
|
|
|
| |
declarations. There
are a couple of O(n^2) operations in this, some analogous to the usual O(n^2)
redeclaration problem and some not. In particular, retroactively removing
shadow declarations when they're hidden by later decls is pretty unfortunate.
I'm not yet convinced it's worse than the alternative, though.
llvm-svn: 91045
|
|
|
|
|
|
| |
tested. Fixes PR5727.
llvm-svn: 90893
|
|
|
|
|
|
| |
declarations.
llvm-svn: 90843
|
|
|
|
| |
llvm-svn: 90614
|
|
|
|
|
|
|
|
|
|
|
| |
overloaded-operator resolution is wildly untested, but the parallel code for
methods seems to satisfy some trivial tests.
Also change some overload-resolution APIs to take a type instead of an expression,
which lets us avoid creating a spurious CXXThisExpr when resolving implicit
member accesses.
llvm-svn: 90410
|
|
|
|
|
|
| |
lack of viable convesion functions.
llvm-svn: 89216
|
|
|
|
|
|
|
|
|
|
| |
two classes, one for typenames and one for values; this seems to have some
support from Doug if not necessarily from the extremely-vague-on-this-point
standard. Track the location of the 'typename' keyword in a using-typename
decl. Make a new lookup result for unresolved values and deal with it in
most places.
llvm-svn: 89184
|
|
|
|
| |
llvm-svn: 89068
|
|
|
|
| |
llvm-svn: 86764
|
|
|
|
|
|
|
|
|
| |
using directives, and fix a bug thereby exposed: since we're playing
tricks with pointers, we need to make certain we're always using the same
pointers for things.
Also tweak an existing error message.
llvm-svn: 86679
|
|
|
|
|
|
| |
This is a pretty minimal test case; I'll make a better one later.
llvm-svn: 86669
|
|
|
|
| |
llvm-svn: 86027
|
|
|
|
|
|
|
| |
scope *up to and including* the innermost namespace scope, rather than
just searching in the innermost namespace scope.
llvm-svn: 82849
|
|
|
|
| |
llvm-svn: 80333
|
|
llvm-svn: 80332
|