diff options
-rw-r--r-- | gcc/java/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/java/jcf-dump.c | 11 | ||||
-rw-r--r-- | gcc/java/jcf.h | 5 |
3 files changed, 23 insertions, 3 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 47104e91cd6..e8b7c155cf0 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,13 @@ +2006-06-06 Tom Tromey <tromey@redhat.com> + + * jcf-dump.c (print_access_flags): Handle varargs, bridge, + synthetic, enum, annotation. + * jcf.h (ACC_BRIDGE): New macro. + (ACC_VARARGS): Likewise. + (ACC_SYNTHETIC): Likewise. + (ACC_ENUM): Likewise. + (ACC_ANNOTATION): Likewise. + 2006-06-06 Mike Stump <mrs@apple.com> * Make-lang.in: Rename to htmldir to build_htmldir to avoid diff --git a/gcc/java/jcf-dump.c b/gcc/java/jcf-dump.c index b3246daff5a..a5e3444cb87 100644 --- a/gcc/java/jcf-dump.c +++ b/gcc/java/jcf-dump.c @@ -395,8 +395,10 @@ print_access_flags (FILE *stream, uint16 flags, char context) if (flags & ACC_ABSTRACT) fprintf (stream, " abstract"); if (flags & ACC_STATIC) fprintf (stream, " static"); if (flags & ACC_FINAL) fprintf (stream, " final"); - if (flags & ACC_TRANSIENT) fprintf (stream, " transient"); - if (flags & ACC_VOLATILE) fprintf (stream, " volatile"); + if (flags & ACC_TRANSIENT) + fprintf (stream, context == 'm' ? " varargs" : " transient"); + if (flags & ACC_VOLATILE) + fprintf (stream, context == 'm' ? " bridge" : " volatile"); if (flags & ACC_NATIVE) fprintf (stream, " native"); if (flags & ACC_SYNCHRONIZED) { @@ -405,8 +407,11 @@ print_access_flags (FILE *stream, uint16 flags, char context) else fprintf (stream, " synchronized"); } - if (flags & ACC_INTERFACE) fprintf (stream, " interface"); + if (flags & ACC_INTERFACE) + fprintf (stream, (flags & ACC_ANNOTATION) ? " @interface" : " interface"); + if (flags & ACC_ENUM) fprintf (stream, " enum"); if (flags & ACC_STRICT) fprintf (stream, " strictfp"); + if (flags & ACC_SYNTHETIC) fprintf (stream, " synthetic"); } diff --git a/gcc/java/jcf.h b/gcc/java/jcf.h index 9c6bc8e1609..0e378970298 100644 --- a/gcc/java/jcf.h +++ b/gcc/java/jcf.h @@ -224,12 +224,17 @@ typedef struct JCF GTY(()) { #define ACC_FINAL 0x0010 #define ACC_SYNCHRONIZED 0x0020 #define ACC_SUPER 0x0020 +#define ACC_BRIDGE 0x0040 #define ACC_VOLATILE 0x0040 #define ACC_TRANSIENT 0x0080 +#define ACC_VARARGS 0x0080 #define ACC_NATIVE 0x0100 #define ACC_INTERFACE 0x0200 #define ACC_ABSTRACT 0x0400 #define ACC_STRICT 0x0800 +#define ACC_SYNTHETIC 0x01000 +#define ACC_ANNOTATION 0x02000 +#define ACC_ENUM 0x04000 /* "Invisible" refers to Miranda methods inserted into an abstract class. It is also used in the runtime. */ #define ACC_INVISIBLE 0x8000 |