diff options
author | Matthias Zenger <mzenger@gmail.com> | 2004-02-20 11:04:17 +0000 |
---|---|---|
committer | Matthias Zenger <mzenger@gmail.com> | 2004-02-20 11:04:17 +0000 |
commit | ffc44a5c910bc4209b1b2fc7344390e3019c272c (patch) | |
tree | a6719f89166dea49ab2d51d4fd13b4b45592239d /sources | |
parent | d19cd4e6791347cfbcd161c02a49eebef4aab686 (diff) | |
download | scala-ffc44a5c910bc4209b1b2fc7344390e3019c272c.tar.gz scala-ffc44a5c910bc4209b1b2fc7344390e3019c272c.tar.bz2 scala-ffc44a5c910bc4209b1b2fc7344390e3019c272c.zip |
Support for Java 1.5 classfiles generated with ...
Support for Java 1.5 classfiles generated with javac and the option
-target 1.5 (which is switched on automatically also for -source 1.5).
Diffstat (limited to 'sources')
-rw-r--r-- | sources/scalac/symtab/classfile/ClassfileParser.java | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sources/scalac/symtab/classfile/ClassfileParser.java b/sources/scalac/symtab/classfile/ClassfileParser.java index fe51630f46..a24fed4feb 100644 --- a/sources/scalac/symtab/classfile/ClassfileParser.java +++ b/sources/scalac/symtab/classfile/ClassfileParser.java @@ -148,6 +148,8 @@ public class ClassfileParser implements ClassfileConstants { res |= Modifiers.FINAL; if ((flags & 0x0200) != 0) res |= Modifiers.INTERFACE | Modifiers.TRAIT | Modifiers.ABSTRACT; + if ((flags & 0x1000) != 0) + res |= Modifiers.SYNTHETIC; return res | Modifiers.JAVA; } @@ -197,6 +199,9 @@ public class ClassfileParser implements ClassfileConstants { */ protected void parseMethod() { int flags = in.nextChar(); + int sflags = transFlags(flags); + if ((flags & 0x0040) != 0) + sflags |= Modifiers.BRIDGE; Name name = (Name)pool.readPool(in.nextChar()); Type type = readType(in.nextChar()); if (CONSTR_N.equals(name)) { |