langtools/src/share/classes/com/sun/tools/javac/code/Symtab.java
changeset 18414 ee1e93e83d2b
parent 17546 06bbe5f5a2b8
child 18646 e628560a86d1
--- a/langtools/src/share/classes/com/sun/tools/javac/code/Symtab.java	Wed Jun 19 13:00:00 2013 +0100
+++ b/langtools/src/share/classes/com/sun/tools/javac/code/Symtab.java	Wed Jun 19 22:07:05 2013 +0100
@@ -570,15 +570,18 @@
         arrayClass.members().enter(arrayCloneMethod);
 
         // Enter operators.
-        enterUnop("+", doubleType, doubleType, nop);
-        enterUnop("+", floatType, floatType, nop);
-        enterUnop("+", longType, longType, nop);
-        enterUnop("+", intType, intType, nop);
+        /*  Internally we use +++, --- for unary +, - to reduce +, - operators
+         *  overloading
+         */
+        enterUnop("+++", doubleType, doubleType, nop);
+        enterUnop("+++", floatType, floatType, nop);
+        enterUnop("+++", longType, longType, nop);
+        enterUnop("+++", intType, intType, nop);
 
-        enterUnop("-", doubleType, doubleType, dneg);
-        enterUnop("-", floatType, floatType, fneg);
-        enterUnop("-", longType, longType, lneg);
-        enterUnop("-", intType, intType, ineg);
+        enterUnop("---", doubleType, doubleType, dneg);
+        enterUnop("---", floatType, floatType, fneg);
+        enterUnop("---", longType, longType, lneg);
+        enterUnop("---", intType, intType, ineg);
 
         enterUnop("~", longType, longType, lxor);
         enterUnop("~", intType, intType, ixor);