🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

1 total messages Started by Niclas Wiberg Thu, 16 Apr 1992 15:44
Bug in gcc 2.1: volatile function produces warning in C++ code
#435
Author: Niclas Wiberg
Date: Thu, 16 Apr 1992 15:44
67 lines
2713 bytes
Hi, and thank you for a good compiler.

I think I have found a bug in gcc 2.1 which only shows up for C++ programs.
We have sun4 with SunOS 4.1.1B and gcc 2.1.

The following file produces a warning when compiled as a C++ program,
with filename "bad.cc", but not when compiled as a C program, with
filename "good.c":

------------------- bad.cc  &  good.c -----------------------
void volatile abort();

void volatile quit() {
  abort();
}
-------------------------------------------------------------

gcc -c good.c       # does not complain

gcc -c bad.cc       # complains:
bad.cc: In function `void  quit ()':
bad.cc:5: warning: `volatile' function does return



----------------- Compilation with -v -----------------------


gcc -v -c good.c

Reading specs from /usr/local/gnu/lib/gcc-lib/sun4os4/2.1/specs
gcc version 2.1
 /usr/local/gnu/lib/gcc-lib/sun4os4/2.1/cpp -lang-c -v -undef -D__GNUC__=2   \\
-Dsparc -Dsun -Dunix -D__sparc__ -D__sun__ -D__unix__ -D__sparc -D__sun      \\
-D__unix good.c /usr/tmp/cca00679.i
GNU CPP version 2.1 (sparc)
 /usr/local/gnu/lib/gcc-lib/sun4os4/2.1/cc1 /usr/tmp/cca00679.i -quiet       \\
-dumpbase good.c -version -o /usr/tmp/cca00679.s
GNU C version 2.1 (sparc) compiled by GNU C version 2.1.
 /usr/local/gnu/lib/gcc-lib/sun4os4/2.1/as -o good.o /usr/tmp/cca00679.s



gcc -v -c bad.cc

Reading specs from /usr/local/gnu/lib/gcc-lib/sun4os4/2.1/specs
gcc version 2.1
 /usr/local/gnu/lib/gcc-lib/sun4os4/2.1/cpp -lang-c++ -v -undef -D__GNUC__=2 \\
-D__GNUG__=2 -D__cplusplus -Dsparc -Dsun -Dunix -D__sparc__ -D__sun__        \\
-D__unix__ -D__sparc -D__sun -D__unix bad.cc /usr/tmp/cca00683.i
GNU CPP version 2.1 (sparc)
 /usr/local/gnu/lib/gcc-lib/sun4os4/2.1/cc1plus /usr/tmp/cca00683.i -quiet   \\
-dumpbase bad.cc -version -o /usr/tmp/cca00683.s
GNU C++ version 2.1 (sparc) compiled by GNU C version 2.1.
bad.cc: In function `void  quit ()':
bad.cc:5: warning: `volatile' function does return
 /usr/local/gnu/lib/gcc-lib/sun4os4/2.1/as -o bad.o /usr/tmp/cca00683.s



Hope you can use this,

----------------------------------------------------------------------
Niclas Wiberg                         nicwi@isy.liu.se
Dept. of EE    Linkoping University   Sweden

Hope you can use this
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads