summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/inline-1.c
blob: 4dce611d91283dcd020e4ea8d419b098c1d799ea (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
/* Verify that DECL_INLINE gets copied between DECLs properly.  */
/* { dg-do compile } */
/* { dg-options "-O1" } */
/* { dg-final { if [ istarget hppa*-*-* ] { scan-assembler-not "xyzzy?,%r" } else { scan-assembler-not "xyzzy" } } } */

/* Test that declaration followed by definition inlines.  */
static inline int xyzzy0 (int);
static int xyzzy0 (int x) { return x; }
int test0 (void)
{
  return xyzzy0 (5);
}

/* Test that definition following declaration inlines.  */
static int xyzzy1 (int);
static inline int xyzzy1 (int x) { return x; }
int test1 (void)
{
  return xyzzy1 (5);
}

/* Test that redeclaration inside a function body inlines.  */
extern inline int xyzzy2 (int x) { return x; }
int test2 (void)
{
  extern int xyzzy2 (int);
  return xyzzy2 (5);
}