[PATCH] c/55976 -Werror=return-type should error on returning a value from a void function
Martin Liška
mliska@suse.cz
Thu Jun 7 11:19:00 GMT 2018
On 06/01/2018 11:08 PM, dave.pagan@oracle.com wrote:
> Thanks for pointing this out. I'll check out what's going on and fix the issue
>
> --Dave
Hi.
Difference is in between C and C++ FEs:
marxin@marxinbox:/dev/shm/objdir/gcc> ./xgcc -B. /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c: In function âtâ:
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c:7:20: warning: âreturnâ with a value, in function returning void
void t () { return 1; } /* { dg-error "return" "function returning void" } */
^
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c:7:6: note: declared here
void t () { return 1; } /* { dg-error "return" "function returning void" } */
^
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c: In function âbâ:
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c:8:12: warning: âreturnâ with no value, in function returning non-void
int b () { return; } /* { dg-error "return" "function returning non-void" } */
^~~~~~
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c:8:5: note: declared here
int b () { return; } /* { dg-error "return" "function returning non-void" } */
^
marxin@marxinbox:/dev/shm/objdir/gcc> ./xg++ -B. /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c: In function âvoid t()â:
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c:7:20: error: return-statement with a value, in function returning âvoidâ [-fpermissive]
void t () { return 1; } /* { dg-error "return" "function returning void" } */
^
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c: In function âint b()â:
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/noncompile/pr55976-1.c:8:12: error: return-statement with no value, in function returning âintâ [-fpermissive]
int b () { return; } /* { dg-error "return" "function returning non-void" } */
^~~~~~
Martin
More information about the Gcc-patches
mailing list