14 lines
724 B
C
14 lines
724 B
C
/* Test diagnostics for bad type conversion when inlining unprototyped
|
|
functions: should not be errors with -pedantic-errors. */
|
|
/* Origin: Joseph Myers <jsm@polyomino.org.uk> */
|
|
/* { dg-do compile } */
|
|
/* { dg-options "-O3 -std=c99 -pedantic-errors" } */
|
|
|
|
/* This is valid to execute, so maybe shouldn't warn at all. */
|
|
inline void f0(x) signed char *x; { }
|
|
void g0(unsigned char *x) { f0(x); } /* { dg-bogus "warning: pointer targets in passing argument 1 of 'f0' differ in signedness" } */
|
|
|
|
/* This is undefined on execution but still must compile. */
|
|
inline void f1(x) int *x; { }
|
|
void g1(unsigned int *x) { f1(x); } /* { dg-bogus "warning: pointer targets in passing argument 1 of 'f1' differ in signedness" } */
|