diff options
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/991112-1.c')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/991112-1.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/991112-1.c b/gcc/testsuite/gcc.c-torture/execute/991112-1.c new file mode 100644 index 000000000..e43c7beeb --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/991112-1.c @@ -0,0 +1,19 @@ +/* This code was miscompiled at -O3 on x86. + Reported by Jim Meyering; distilled from bash. */ + +int rl_show_char (int c) { return 0; } + +int rl_character_len (int c, int pos) +{ + return isprint (c) ? 1 : 2; +} + +int main(void) +{ + int (*x)(int, int) = rl_character_len; + if (x('a', 1) != 1) + abort(); + if (x('\002', 1) != 2) + abort(); + return 0; +} |