[PATCH] Fix preponderance of warnings in libjava from boehm-gc
Bryce McKinlay
mckinlay@redhat.com
Thu Dec 9 16:41:00 GMT 2004
On 9-Dec-04, at 9:51 AM, Kelley Cook wrote:
> Third iteration at fixing the duplicate PACKAGE warnings from boehm-gc
> should be the charm. The change from the second iteration is that
> this time I grab all the GC_*_THREADS definitions too.
>
> Tom,
>
> My first iteration did as you recently suggested and copied everything
> except PACKAGE and VERSION.
>
> Both Nathanael and Bryce said that the logic for the generated file
> should be to only include definitions that we wish to externally
> present as opposed to only excluding those we know are problematic. I
> personally agree with them.
Indeed. I'd like to "fix" the GC so that it doesn't rely on things like
THREADS_* being defined when we include its headers. It appears that
the only problem with my original patch was naming the GC's config file
"config.h". This meant that the "#include <config.h>" in gc.h resolved
to libjava's config.h and not the GC's, when gc.h was included from
libjava - oops.
Your patch should certainly work, but I don't like it so much because
doing it with a grep in the Makefile obfuscates things somewhat - ie it
won't be immediately obvious to future hackers precisely what is going
on. Note that the only flag that should be needed externally by libjava
is THREAD_LOCAL_ALLOC, so I think it would be better to make this
explicit in gc_config.h. ie: use the original patch combined with your
naming convention for the GC's config files. I'll test a patch to do
this and post it soon.
> Bootstrapped and regtested on powerpc-apple-darwin7.6.0
>
> OK to install? The hundreds of libjava warnings are a regression that
> I caused, though I do not believe that there is a PR associated with
> the problem.
>
> BTW: Bryce, is CVS's PR18699.out supposed to be a zero byte file?
Yes.
Regards
Bryce
More information about the Gcc-bugs
mailing list