Patch to enable libgcj.dll for MinGW
TJ Laurenzo
tlaurenzo@gmail.com
Tue Sep 6 19:36:00 GMT 2005
> Ah, no. Call supports_one_only().
I'm a bit confused by the comment on this function:
/* Returns 1 if the target configuration supports defining public symbols
so that one of them will be chosen at link time instead of generating a
multiply-defined symbol error, whether through the use of weak symbols or
a target-specific mechanism for having duplicates discarded. */
The macro this function depends on is defined=1 for ming/cygwin and a
handful of other targets, so it appears to be the correct one, but
reading the comment of this function actually makes me think the
inverse is true. In any case, assuming that either my understanding
or the function's comment is faulty, the new patch to gjavah.c is
below.
Am I right to think that this will be the first platform specific
behavior added to gcjh? Do people expect it to generate the same
headers regardless of platform?
Let me know if this patch is more palatable. If so, I will submit it.
Index: gjavah.c
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/java/gjavah.c,v
retrieving revision 1.135
diff -c -3 -r1.135 gjavah.c
*** gjavah.c 25 Jun 2005 00:33:00 -0000 1.135
--- gjavah.c 6 Sep 2005 19:02:19 -0000
***************
*** 251,257 ****
}
#define HANDLE_CODE_ATTRIBUTE(MAX_STACK, MAX_LOCALS, CODE_LENGTH) \
! if (out && method_declared) decompile_method (out, jcf, CODE_LENGTH);
static int decompiled = 0;
#define HANDLE_END_METHOD() \
--- 251,257 ----
}
#define HANDLE_CODE_ATTRIBUTE(MAX_STACK, MAX_LOCALS, CODE_LENGTH) \
! if (out && method_declared && !SUPPORTS_ONE_ONLY) decompile_method
(out, jcf, CODE_LENGTH);
static int decompiled = 0;
#define HANDLE_END_METHOD() \
More information about the Java
mailing list