Mail Archives: djgpp-workers/2003/05/25/16:14:27
Hello.
Andrew Cottrell wrote:
[snip]
> The major problem encounted:-
> d:/dj204/bin/make.exe -C src
> gcc -MD -O2 -mcpu=pentium -march=i386 -Wall -Wbad-function-cast -Wcast-qual
> -Werror -Wmissing-declarations -Wmissing-prototypes -Wpointer-arit
> h -Wshadow -Wstrict-prototypes -Wwrite-strings -Wundef -Wcast-align -Wsign-c
> ompare -nostdinc -fno-strict-aliasing -I. -I- -isystem
> ../../../include -DGAS_MAJOR=2 -DGAS_MINOR=13 -DGAS_MINORMINOR=Copyright -c
> -fno-exceptions emu387.cc
> cc1plus.exe: warning: "-Wbad-function-cast" is valid for C/ObjC but not for
> C++
> cc1plus.exe: warning: "-Wmissing-declarations" is valid for C/ObjC but not
> for C++
> make.exe[3]: *** [emu387.o] Error 1
> make.exe[2]: *** [all_subs] Error 2
> make.exe[1]: *** [all] Error 2
> make.exe: *** [subs] Error 2
>
> Analaysis:-
> The problem is caused by GCC 3.3 changing its checking. The current LIBC
> make process does not include a specific gcc option file for C++ files and
> instead uses the gcc.opt file.
>
> Proposal:-
> Add a GPP.OPT file and modifiy the relevant files to use this.
[snip]
Perhaps we could generate gpp.opt from gcc.opt using a script that filters out
invalid options for C++. For an example see noprof.sed, which we use to filter
out the profiling options, when building the profiling code. noprof.sed is
only used with one source file, so we apply that on the fly with sed to
gcc.opt. gpp.opt should be generated once, I think, to avoid the overhead of
starting sed for each C++ file.
The fix to emu387 looks fine. I was thinking that we could make the 'tag'
member of 'struct reg' an int, to avoid the typecast, but that's probably not
worth it. Do you want me to commit that part of the patch?
Bye, Rich =]
--
Richard Dawe [ http://www.phekda.freeserve.co.uk/richdawe/ ]
- Raw text -