1// { dg-do compile }
2
3int check;
4
5template<typename T> void foo()
6{
7  #pragma omp atomic
8  check |= sizeof(T);
9}
10
11template<typename T> void bar(T *x, T y)
12{
13  #pragma omp atomic
14  *x += y;
15}
16
17void test ()
18{
19  int i;
20  long l;
21
22  foo<char>();
23  foo<short>();
24  bar(&i, 4);
25  bar(&l, 8L);
26}
27