1 /* Test -fgnu89-extern-inline.  */
2 /* { dg-do compile } */
3 /* { dg-options "-fgnu89-inline" } */
4 /* { dg-final { scan-assembler "func1" } } */
5 /* { dg-final { scan-assembler-not "func2" } } */
6 /* { dg-final { scan-assembler "func3" } } */
7 /* { dg-final { scan-assembler "func4" } } */
8 
9 #ifndef __GNUC_GNU_INLINE__
10 #error __GNUC_GNU_INLINE__ is not defined
11 #endif
12 
13 #ifdef __GNUC_STDC_INLINE__
14 #error __GNUC_STDC_INLINE__ is defined
15 #endif
16 
func1(void)17 extern inline int func1 (void) { return 0; }
func1(void)18 inline int func1 (void) { return 1; }
19 
20 extern int func2 (void);
func2(void)21 extern inline int func2 (void) { return 2; }
22 
23 inline int func3 (void);
func3(void)24 inline int func3 (void) { return 3; }
25 
26 extern int func4 (void);
func4(void)27 extern inline int func4 (void) { return 4; }
func4(void)28 int func4 (void) { return 5; }
29