aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/attr-flatten-1.c
blob: 68a194cc5270b70651b4e68f2f9bdcbb11f766ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/* { dg-require-alias "" } */
int fn2(int);
int fn3(int);

__attribute__((flatten))
int fn1(int p1)
{
  int a = fn2(p1);
  return fn3(a);
}
__attribute__((flatten))
__attribute__((alias("fn1")))
int fn4(int p1);

/* Again, but this time the target doesn't have the attribute.  */
int fn1a(int p1)
{
  int a = fn2(p1);
  return fn3(a);
}
__attribute__((flatten))
__attribute__((alias("fn1a")))
int fn4a(int p1); /* { dg-warning "ignored" } */

int
test ()
{
  return fn4(1)+fn4a(1);
}