summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/ext/attribute-may-alias-4.C
blob: a459d49e9ee660d1073d2dc5d083a1707d5b2c04 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// PR c++/70209

struct V {
  typedef float F;
  template <typename S> void m_fn1(S);
};

template <typename> struct A {
  typedef V::F Ta __attribute__((__may_alias__));
  Ta *m_data;
  void m_fn2(V &);
};

template <>
void A<int>::m_fn2(V &p) {
  p.m_fn1(m_data);
}