diff options
author | Matthias Zenger <mzenger@gmail.com> | 2004-01-08 15:18:38 +0000 |
---|---|---|
committer | Matthias Zenger <mzenger@gmail.com> | 2004-01-08 15:18:38 +0000 |
commit | abdb5cc6bb86908c0a8a1d9e9ebd038e08c33964 (patch) | |
tree | 4b3cf4e78b4260f7ee24e5cdc2f2e6f0294e613c /sources/scalac/symtab/classfile/ClassfileParser.java | |
parent | cc195672a2bc2c8bec71783c50dd36da2217381a (diff) | |
download | scala-abdb5cc6bb86908c0a8a1d9e9ebd038e08c33964.tar.gz scala-abdb5cc6bb86908c0a8a1d9e9ebd038e08c33964.tar.bz2 scala-abdb5cc6bb86908c0a8a1d9e9ebd038e08c33964.zip |
Ignore bridge methods of Java 1.5
Diffstat (limited to 'sources/scalac/symtab/classfile/ClassfileParser.java')
-rw-r--r-- | sources/scalac/symtab/classfile/ClassfileParser.java | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/sources/scalac/symtab/classfile/ClassfileParser.java b/sources/scalac/symtab/classfile/ClassfileParser.java index 94dec05d4a..f595883fcd 100644 --- a/sources/scalac/symtab/classfile/ClassfileParser.java +++ b/sources/scalac/symtab/classfile/ClassfileParser.java @@ -25,16 +25,20 @@ public class ClassfileParser implements ClassfileConstants { | DEPRECATED_ATTR | META_ATTR | SCALA_ATTR - | JACO_ATTR; + | JACO_ATTR + | SIG_ATTR; static final int METH_ATTR = CODE_ATTR | EXCEPTIONS_ATTR | SYNTHETIC_ATTR | DEPRECATED_ATTR - | META_ATTR; + | META_ATTR + | SIG_ATTR + | BRIDGE_ATTR; static final int FIELD_ATTR = CONSTANT_VALUE_ATTR | SYNTHETIC_ATTR | DEPRECATED_ATTR - | META_ATTR; + | META_ATTR + | SIG_ATTR; protected Global global; protected AbstractFileReader in; @@ -204,11 +208,11 @@ public class ClassfileParser implements ClassfileConstants { return; } switch (type) { - case MethodType(Symbol[] vparams, _): - type = Type.MethodType(vparams, ctype); - break; - default: - throw new ApplicationError(); + case MethodType(Symbol[] vparams, _): + type = Type.MethodType(vparams, ctype); + break; + default: + throw new ApplicationError(); } Symbol constr = c.primaryConstructor(); if (constr.isInitialized()) @@ -227,7 +231,8 @@ public class ClassfileParser implements ClassfileConstants { setParamOwners(type, s); s.setFirstInfo(type); attrib.readAttributes(s, type, METH_ATTR); - ((flags & 0x0008) != 0 ? statics : locals).enterOrOverload(s); + if ((s.flags & Modifiers.BRIDGE) == 0) + ((flags & 0x0008) != 0 ? statics : locals).enterOrOverload(s); } } |