summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sources/scalac/atree/AFunction.java2
-rw-r--r--sources/scalac/atree/ATreePrinter.java12
2 files changed, 8 insertions, 6 deletions
diff --git a/sources/scalac/atree/AFunction.java b/sources/scalac/atree/AFunction.java
index 55dee42179..ed5a4c5fba 100644
--- a/sources/scalac/atree/AFunction.java
+++ b/sources/scalac/atree/AFunction.java
@@ -16,7 +16,7 @@ public class AFunction {
//########################################################################
// Public Cases
- public case Method(ACode object, Symbol method, boolean isStatic);
+ public case Method(ACode object, Symbol method, AInvokeStyle style);
public case Primitive(APrimitive primitive);
//########################################################################
diff --git a/sources/scalac/atree/ATreePrinter.java b/sources/scalac/atree/ATreePrinter.java
index 6c831d6b9f..783af97c8d 100644
--- a/sources/scalac/atree/ATreePrinter.java
+++ b/sources/scalac/atree/ATreePrinter.java
@@ -443,14 +443,16 @@ public class ATreePrinter {
/** Prints the function. */
public ATreePrinter printFunction(AFunction function) {
switch (function) {
- case Method(This(Symbol clasz), Symbol method, true):
+ case Method(Void, Symbol method, InvokeStyle.New):
+ return print("new").space().printSymbol(method);
+ case Method(Void, Symbol method, InvokeStyle.Static):
+ return printSymbol(method.owner()).print('.').printSymbol(method);
+ case Method(This(Symbol clasz), Symbol method, InvokeStyle.Static):
printSymbol(clasz).print('.').print("super").print('.');
return printSymbol(method);
- case Method(Void, Symbol method, true):
- return printSymbol(method.owner()).print('.').printSymbol(method);
- case Method(ACode object, Symbol method, boolean isStatic):
+ case Method(ACode object, Symbol method, InvokeStyle style):
printCode(object).print('.');
- if (isStatic) print("<static>").space();
+ if (style != InvokeStyle.Dynamic) print("<" + style + ">").space();
return printSymbol(method);
case Primitive(APrimitive primitive):
return printPrimitive(primitive);