summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/ext/attrib17.C
blob: 43cf264f51e99776b522077c94836c67cb852286 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// { dg-do compile }
// Origin: Benjamin Kosnik <bkoz at gcc dot gnu dot org>
// PR c++/17743: Attributes applied to typedefs.

struct A {
  typedef char layout_type[sizeof(double)]
  __attribute__((aligned(__alignof__(double))));
  layout_type data;
};

struct B {
  typedef char layout_type[sizeof(double)];
  layout_type data   __attribute__((aligned(__alignof__(double))));
};

template<bool> struct StaticAssert;
template<> struct StaticAssert<true> {};

StaticAssert<__alignof__(A) == __alignof__(B)> a1;