summaryrefslogtreecommitdiff
path: root/sources/scalac/symtab/classfile
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2004-03-23 17:57:12 +0000
committerpaltherr <paltherr@epfl.ch>2004-03-23 17:57:12 +0000
commitfeb87f51f3621b1673d13d58d30b57e2c0045b52 (patch)
treea1514a9548e278c07104e8746af03a92ce1c11e3 /sources/scalac/symtab/classfile
parent4206abe0ca96b5be814fde59cef3b690c0944acf (diff)
downloadscala-feb87f51f3621b1673d13d58d30b57e2c0045b52.tar.gz
scala-feb87f51f3621b1673d13d58d30b57e2c0045b52.tar.bz2
scala-feb87f51f3621b1673d13d58d30b57e2c0045b52.zip
- Reremoved bridge methods (for java 1.5)
Diffstat (limited to 'sources/scalac/symtab/classfile')
-rw-r--r--sources/scalac/symtab/classfile/ClassfileParser.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/sources/scalac/symtab/classfile/ClassfileParser.java b/sources/scalac/symtab/classfile/ClassfileParser.java
index eb269455e2..4d1ae22e9f 100644
--- a/sources/scalac/symtab/classfile/ClassfileParser.java
+++ b/sources/scalac/symtab/classfile/ClassfileParser.java
@@ -195,7 +195,7 @@ public class ClassfileParser implements ClassfileConstants {
protected void parseMethod() {
int jflags = in.nextChar();
int sflags = transFlags(jflags);
- if ((jflags & JAVA_ACC_BRIDGE) != 0) sflags |= Modifiers.BRIDGE;
+ if ((jflags & JAVA_ACC_BRIDGE) != 0) sflags |= Modifiers.PRIVATE;
if ((sflags & Modifiers.PRIVATE) != 0) {
in.skip(4);
attrib.skipAttributes();
@@ -226,8 +226,11 @@ public class ClassfileParser implements ClassfileConstants {
setParamOwners(type, symbol);
symbol.setInfo(type);
attrib.readAttributes(symbol, type, METH_ATTR);
- if (name != CONSTR_N) getScope(jflags).enterOrOverload(symbol);
- else if (newConstructor) owner.addConstructor(symbol);
+ if (name != CONSTR_N) {
+ if ((symbol.flags & Modifiers.BRIDGE) == 0)
+ getScope(jflags).enterOrOverload(symbol);
+ } else if (newConstructor)
+ owner.addConstructor(symbol);
}
}