Sign in
gnu
/
gcc
/
ab810952eb7c061e37054ddd1dfe0aa033365131
/
.
/
gcc
/
testsuite
/
g++.dg
/
ext
/
attribute-may-alias-2.C
blob: d7e1fdfdd4a85c3f978777d27237277200b461f3 [
file
] [
log
] [
blame
]
// PR c++/53421
template
<
class
T
>
struct
Y
:
T
{
}
__attribute__
((
__may_alias__
));
struct
X
{
operator
Y
<
X
>&
();
};
Y
<
X
>
y
=
Y
<
X
>();
X
::
operator
Y
<
X
>&
()
{
return
*
static_cast
<
Y
<
X
>*
>(
this
);
}