mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-12-13 19:24:21 +00:00
Add test for regression caused by reverted patch r315251.
llvm-svn: 315366
This commit is contained in:
parent
ad3d03193a
commit
decaff11aa
@ -218,3 +218,34 @@ namespace PR18964 {
|
|||||||
unsigned &*foo; //expected-error{{'foo' declared as a pointer to a reference of type}}
|
unsigned &*foo; //expected-error{{'foo' declared as a pointer to a reference of type}}
|
||||||
extern struct {} *foo; // don't assert
|
extern struct {} *foo; // don't assert
|
||||||
}
|
}
|
||||||
|
|
||||||
|
namespace typedef_name_for_linkage {
|
||||||
|
template<typename T> struct Use {};
|
||||||
|
|
||||||
|
struct A { A(); A(const A&); ~A(); };
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
A a;
|
||||||
|
} B;
|
||||||
|
|
||||||
|
struct C {
|
||||||
|
typedef struct {
|
||||||
|
A a;
|
||||||
|
} D;
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
void f() { static int n; struct Inner {};}
|
||||||
|
} E;
|
||||||
|
|
||||||
|
// FIXME: Ideally this would be accepted in all modes. In C++98, we trigger a
|
||||||
|
// linkage calculation to drive the "internal linkage type as template
|
||||||
|
// argument" warning.
|
||||||
|
typedef struct {
|
||||||
|
void f() { struct Inner {}; Use<Inner> ui; }
|
||||||
|
} F;
|
||||||
|
#if __cplusplus < 201103L
|
||||||
|
// expected-error@-2 {{unsupported: typedef changes linkage of anonymous type, but linkage was already computed}}
|
||||||
|
// expected-note@-5 {{use a tag name here}}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user