forked from OSchip/llvm-project
Imrpove the note text for when a non-type decl hides a tag type
llvm-svn: 155723
This commit is contained in:
parent
6120cfb8cd
commit
3fe3f85769
|
@ -74,8 +74,8 @@ def err_module_cycle : Error<"cyclic dependency in module '%0': %1">,
|
||||||
def warn_module_build : Warning<"building module '%0' from source">,
|
def warn_module_build : Warning<"building module '%0' from source">,
|
||||||
InGroup<ModuleBuild>, DefaultIgnore;
|
InGroup<ModuleBuild>, DefaultIgnore;
|
||||||
def note_pragma_entered_here : Note<"#pragma entered here">;
|
def note_pragma_entered_here : Note<"#pragma entered here">;
|
||||||
def note_decl_shadowing_tag_type : Note<
|
def note_decl_hiding_tag_type : Note<
|
||||||
"non-type %0 shadowing %1 %0 declared here">;
|
"%1 %0 is hidden by a non-type declaration of %0 here">;
|
||||||
|
|
||||||
// Sema && Lex
|
// Sema && Lex
|
||||||
def ext_longlong : Extension<
|
def ext_longlong : Extension<
|
||||||
|
|
|
@ -1683,7 +1683,7 @@ bool Parser::ParseImplicitInt(DeclSpec &DS, CXXScopeSpec *SS,
|
||||||
if (Actions.LookupParsedName(R, getCurScope(), SS)) {
|
if (Actions.LookupParsedName(R, getCurScope(), SS)) {
|
||||||
for (LookupResult::iterator I = R.begin(), IEnd = R.end();
|
for (LookupResult::iterator I = R.begin(), IEnd = R.end();
|
||||||
I != IEnd; ++I)
|
I != IEnd; ++I)
|
||||||
Diag((*I)->getLocation(), diag::note_decl_shadowing_tag_type)
|
Diag((*I)->getLocation(), diag::note_decl_hiding_tag_type)
|
||||||
<< TokenName << TagName;
|
<< TokenName << TagName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -569,7 +569,7 @@ Corrected:
|
||||||
if (LookupParsedName(R, S, &SS)) {
|
if (LookupParsedName(R, S, &SS)) {
|
||||||
for (LookupResult::iterator I = R.begin(), IEnd = R.end();
|
for (LookupResult::iterator I = R.begin(), IEnd = R.end();
|
||||||
I != IEnd; ++I)
|
I != IEnd; ++I)
|
||||||
Diag((*I)->getLocation(), diag::note_decl_shadowing_tag_type)
|
Diag((*I)->getLocation(), diag::note_decl_hiding_tag_type)
|
||||||
<< Name << TagName;
|
<< Name << TagName;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -211,7 +211,7 @@ class Foo {
|
||||||
public:
|
public:
|
||||||
enum Bar { X, Y };
|
enum Bar { X, Y };
|
||||||
void SetBar(Bar bar);
|
void SetBar(Bar bar);
|
||||||
Bar Bar(); // expected-note 2 {{non-type 'Bar' shadowing enum 'Bar' declared here}}
|
Bar Bar(); // expected-note 2 {{enum 'Bar' is hidden by a non-type declaration of 'Bar' here}}
|
||||||
private:
|
private:
|
||||||
Bar bar_; // expected-error {{must use 'enum' tag to refer to type 'Bar' in this scope}}
|
Bar bar_; // expected-error {{must use 'enum' tag to refer to type 'Bar' in this scope}}
|
||||||
};
|
};
|
||||||
|
|
|
@ -51,7 +51,7 @@ namespace foo {
|
||||||
class Bar {};
|
class Bar {};
|
||||||
}
|
}
|
||||||
|
|
||||||
void Bar(int); // expected-note{{non-type 'Bar' shadowing class 'Bar' declared here}}
|
void Bar(int); // expected-note{{class 'Bar' is hidden by a non-type declaration of 'Bar' here}}
|
||||||
using foo::Bar;
|
using foo::Bar;
|
||||||
|
|
||||||
void ambiguity() {
|
void ambiguity() {
|
||||||
|
|
Loading…
Reference in New Issue