diff options
author | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-02-29 23:43:29 +0000 |
---|---|---|
committer | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-02-29 23:43:29 +0000 |
commit | 9d5baf966b6861e550dfed9014db548d283fb9a9 (patch) | |
tree | 79f67c731f4bdf068313a3e2b873f2feb80a0d5d /gcc/testsuite | |
parent | b2353ac42155e16d9bbd202d71910729ff37102b (diff) | |
download | gcc-9d5baf966b6861e550dfed9014db548d283fb9a9.tar.gz |
PR middle-end/13448
* c-tree.h (readonly_warning): Rename to ...
(readonly_error): ... this.
* c-typeck.c (build_unary_op): Adjust accordingly.
(readonly_warning): Rename to ...
(readonly_error): ... this and issue errors, not warnings.
(build_modify_expr): Call readonly_error, not readonly_warning.
(c_expand_asm_operands): Likewise.
* tree-inline.c (optimize_inline_calls): Do not inline functions
after errors have occurred.
PR middle-end/13448
* gcc.dg/inline-5.c: New test.
* gcc.dg/always-inline.c: Split out tests into ...
* gcc.dg/always-inline2.c: ... this and ...
* gcc.dg/always-inline3.c: ... this.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78682 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/always_inline.c | 12 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/always_inline2.c | 8 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/always_inline3.c | 8 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/inline-5.c | 13 |
5 files changed, 37 insertions, 12 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b5aa29d32f2..74be633db11 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,13 @@ 2004-02-29 Mark Mitchell <mark@codesourcery.com> + PR middle-end/13448 + * gcc.dg/inline-5.c: New test. + * gcc.dg/always-inline.c: Split out tests into ... + * gcc.dg/always-inline2.c: ... this and ... + * gcc.dg/always-inline3.c: ... this. + +2004-02-29 Mark Mitchell <mark@codesourcery.com> + PR debug/12103 * g++.dg/debug/crash1.C: New test. diff --git a/gcc/testsuite/gcc.dg/always_inline.c b/gcc/testsuite/gcc.dg/always_inline.c index 9480470a95a..2177f642f60 100644 --- a/gcc/testsuite/gcc.dg/always_inline.c +++ b/gcc/testsuite/gcc.dg/always_inline.c @@ -1,18 +1,6 @@ /* { dg-do compile } */ /* { dg-options "-Winline -O2" } */ #include <stdarg.h> -inline __attribute__ ((always_inline)) void t(void); /* { dg-error "body not available" "" } */ -void -q(void) -{ - t(); /* { dg-error "called from here" "" } */ -} -inline __attribute__ ((always_inline)) void -q2(void) -{ /* { dg-error "recursive" "" } */ - q2(); /* { dg-error "called from here" "" } */ - q2(); /* { dg-error "called from here" "" } */ -} inline __attribute__ ((always_inline)) void e(int t, ...) { /* { dg-error "variable argument" "" } */ diff --git a/gcc/testsuite/gcc.dg/always_inline2.c b/gcc/testsuite/gcc.dg/always_inline2.c new file mode 100644 index 00000000000..fa6528d1fac --- /dev/null +++ b/gcc/testsuite/gcc.dg/always_inline2.c @@ -0,0 +1,8 @@ +/* { dg-do compile } */ +/* { dg-options "-Winline -O2" } */ +inline __attribute__ ((always_inline)) void t(void); /* { dg-error "body not available" "" } */ +void +q(void) +{ + t(); /* { dg-error "called from here" "" } */ +} diff --git a/gcc/testsuite/gcc.dg/always_inline3.c b/gcc/testsuite/gcc.dg/always_inline3.c new file mode 100644 index 00000000000..b183770adc0 --- /dev/null +++ b/gcc/testsuite/gcc.dg/always_inline3.c @@ -0,0 +1,8 @@ +/* { dg-do compile } */ +/* { dg-options "-Winline -O2" } */ +inline __attribute__ ((always_inline)) void +q2(void) +{ /* { dg-error "recursive" "" } */ + q2(); /* { dg-error "called from here" "" } */ + q2(); /* { dg-error "called from here" "" } */ +} diff --git a/gcc/testsuite/gcc.dg/inline-5.c b/gcc/testsuite/gcc.dg/inline-5.c new file mode 100644 index 00000000000..d72fad65610 --- /dev/null +++ b/gcc/testsuite/gcc.dg/inline-5.c @@ -0,0 +1,13 @@ +/* PR middle-end/13448 */ + +/* { dg-options "-O3" } */ + +void funct (const int n) +{ + n++; /* { dg-error "" } */ +} + +int main () { + funct (1); + return 0; +} |