view gcc/testsuite/g++.dg/ext/attribute-may-alias-3.C @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 04ced10e8804
children
line wrap: on
line source

// PR c++/68049
// { dg-do compile { target c++11 } }

template <typename T> struct Bar
{
    using type = T;
};
template <typename T> struct Foo
{
    typedef typename Bar<T>::type alias_type [[gnu::may_alias]];

    alias_type operator()() { return {}; }
};

template <typename T> void print(T) {}

int main()
{
    print(Foo<int>()());
    print(0);
    return 0;
}