changeset 74:192da4976daa new_gen

Renamed Add, Sub, Mul, Div and Mod in lexer to what they are (Plus, Minus....)
author johnsen@johnsen-laptop
date Fri, 02 May 2008 13:19:23 +0200
parents 9f66771fb1a3
children 86aec2160221
files dsss.conf gen/CodeGen.d lexer/Lexer.d lexer/Token.d parser/Parser.d
diffstat 5 files changed, 31 insertions(+), 33 deletions(-) [+]
line wrap: on
line diff
--- a/dsss.conf	Thu May 01 23:09:27 2008 +0200
+++ b/dsss.conf	Fri May 02 13:19:23 2008 +0200
@@ -6,10 +6,10 @@
 
 [dang/compiler.d]
 Target = Dang
-buildflags = -llllvm-c-ext -llstdc++ \
- -llLLVMCore -llLLVMBitWriter -llLLVMBitReader -llLLVMAnalysis -llLLVMTarget \
+buildflags =  -llstdc++ \
+ -llLLVMSystem -llLLVMSupport -llLLVMCore -llLLVMBitWriter -llLLVMBitReader -llLLVMAnalysis -llLLVMTarget \
  -llLLVMTransformUtils -llLLVMScalarOpts -llLLVMipa -llLLVMipo \
- -llLLVMInstrumentation -llLLVMSystem -llLLVMSupport -lldl
+ -llLLVMInstrumentation -llllvm-c-ext -lldl
 
 [tests/run.d]
 Target = tests/run
--- a/gen/CodeGen.d	Thu May 01 23:09:27 2008 +0200
+++ b/gen/CodeGen.d	Fri May 02 13:19:23 2008 +0200
@@ -480,7 +480,6 @@
 
     Value getPointer(Exp exp)
     {
-        Stdout("lala ")(exp).newline;
         switch(exp.expType)
         {
             case ExpType.Identifier:
--- a/lexer/Lexer.d	Thu May 01 23:09:27 2008 +0200
+++ b/lexer/Lexer.d	Fri May 02 13:19:23 2008 +0200
@@ -61,11 +61,11 @@
         symbolFunctions['!'] = ≠
         symbolFunctions['<'] = &le;
         symbolFunctions['>'] = &ge;
-        symbolFunctions['+'] = &add;
-        symbolFunctions['-'] = &sub;
-        symbolFunctions['*'] = &mul;
-        symbolFunctions['/'] = &div;
-        symbolFunctions['%'] = &mod;
+        symbolFunctions['+'] = &plus;
+        symbolFunctions['-'] = &minus;
+        symbolFunctions['*'] = &star;
+        symbolFunctions['/'] = &slash;
+        symbolFunctions['%'] = &percent;
     }
 
     /**
@@ -201,19 +201,19 @@
             return Token(Tok.Ge, Location(position++ - 1, this.source), 2);
         return Token(Tok.Gt, Location(position - 1, this.source), 1);
     }
-    Token add() 
+    Token plus() 
     {
-        return Token(Tok.Add, Location(position - 1, this.source), 1);
+        return Token(Tok.Plus, Location(position - 1, this.source), 1);
     }
-    Token sub() 
+    Token minus() 
     {
-        return Token(Tok.Sub, Location(position - 1, this.source), 1);
+        return Token(Tok.Minus, Location(position - 1, this.source), 1);
     }
-    Token mul() 
+    Token star() 
     {
-        return Token(Tok.Mul, Location(position - 1, this.source), 1);
+        return Token(Tok.Star, Location(position - 1, this.source), 1);
     }
-    Token div() 
+    Token slash() 
     {
         switch(source.data[position])
         {
@@ -262,13 +262,13 @@
                 throw error(__LINE__, "Unexpected end of file. Unclosed comment block");
 
             default:
-                return Token(Tok.Div, Location(position - 1, this.source), 1);
+                return Token(Tok.Slash, Location(position - 1, this.source), 1);
         }
     }
 
-    Token mod() 
+    Token percent() 
     {
-        return Token(Tok.Mod, Location(position - 1, this.source), 1);
+        return Token(Tok.Percent, Location(position - 1, this.source), 1);
     }
     
     Token lexNumber ()
--- a/lexer/Token.d	Thu May 01 23:09:27 2008 +0200
+++ b/lexer/Token.d	Fri May 02 13:19:23 2008 +0200
@@ -100,8 +100,8 @@
 
     /* Basic operators */
     Assign,
-    Add, Sub,
-    Mul, Div, Mod,
+    Plus, Minus,
+    Star, Slash, Percent,
     Comma,
 
     /* Symbols */
@@ -176,11 +176,11 @@
         Tok.CloseBracket:"CloseBracket",
         Tok.Dot:"Dot",
         Tok.Assign:"Assign",
-        Tok.Add:"Add",
-        Tok.Sub:"Sub",
-        Tok.Mul:"Mul",
-        Tok.Div:"Div",
-        Tok.Mod:"Mod",
+        Tok.Plus:"Plus",
+        Tok.Minus:"Minus",
+        Tok.Star:"Star",
+        Tok.Slash:"Slash",
+        Tok.Percent:"Percent",
         Tok.Integer:"Integer",
         Tok.If:"If",
         Tok.While:"While",
--- a/parser/Parser.d	Thu May 01 23:09:27 2008 +0200
+++ b/parser/Parser.d	Fri May 02 13:19:23 2008 +0200
@@ -378,7 +378,6 @@
         else if (next.type == Tok.Integer)
             return action.actOnNumericConstant(next);
 
-        Stdout.formatln("{}", next.getType);
         throw error(__LINE__, "Expected expression, not '"~next.getType~"'").tok(next);
         assert(0, "Should not happen");
     }
@@ -401,7 +400,7 @@
         int prec;
     }
 
-    static const UnOp[] _unary = [{Tok.Sub, 4}];
+    static const UnOp[] _unary = [{Tok.Minus, 4}];
     UnOp* unary(Tok t)
     {
         foreach (ref op; _unary)
@@ -430,12 +429,12 @@
         {Tok.Gt,        2, true, Operator.Gt},
         {Tok.Ge,        2, true, Operator.Ge},
 
-        {Tok.Add,       3, true, Operator.Add},
-        {Tok.Sub,       3, true, Operator.Sub},
+        {Tok.Plus,      3, true, Operator.Add},
+        {Tok.Minus,     3, true, Operator.Sub},
 
-        {Tok.Mul,       5, true, Operator.Mul},
-        {Tok.Div,       5, true, Operator.Div},
-        {Tok.Mod,       5, true, Operator.Mod}
+        {Tok.Star,      5, true, Operator.Mul},
+        {Tok.Slash,     5, true, Operator.Div},
+        {Tok.Percent,   5, true, Operator.Mod}
     ];
     BinOp* binary(Tok t)
     {