changeset 30:3147a52d1247 new_gen

Ooops.. should have compiled before commit.. now works again
author Anders Halager <halager@gmail.com>
date Sun, 20 Apr 2008 11:53:40 +0200
parents 41d23f2762c3
children d14705a06bdd
files parser/Parser.d sema/Declarations.d
diffstat 2 files changed, 11 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/parser/Parser.d	Sun Apr 20 11:47:34 2008 +0200
+++ b/parser/Parser.d	Sun Apr 20 11:53:40 2008 +0200
@@ -70,12 +70,12 @@
                                 return new VarDecl(type, identifier, exp);
                             default:
                                 char[] c = t.getType;
-                                error(__LINE__, "Unexpexted token %0").arg(c);
+                                throw error(__LINE__, "Unexpexted token %0").arg(c);
                         }
                         break;
                     default:
                         char[] c = t.getType;
-                        error(__LINE__, "Unexpexted token %0", &iden).arg(c);
+                        throw error(__LINE__, "Unexpexted token %0", &iden).arg(c);
                 }
                 break;
             case Tok.Struct:
@@ -136,19 +136,19 @@
                                 return new VarDecl(type, identifier, exp);
                             default:
                                 char[] c = t.getType;
-                                error("Unexpexted token "~c~" at line "~Integer.toString(__LINE__));
+                                throw error(__LINE__, "Unexpexted token %0").arg(c);
                         }
                         break;
                     default:
                         char[] c = t.getType;
-                        error("Unexpexted token "~c~" at line "~Integer.toString(__LINE__));
+                        throw error(__LINE__, "Unexpexted token %0").arg(c);
                 }
                 break;
             case Tok.EOF:
                 return null;
             default:
                 char[] c = t.getType;
-                error("Unexpexted token "~c~" at line "~Integer.toString(__LINE__));
+                throw error(__LINE__, "Unexpexted token %0").arg(c);
         }
     }
 
@@ -332,7 +332,8 @@
                         return parseExpIdentifier(
                                 new MemberLookup(target, new Identifier(lexer.next)));
                     default:
-                        throw new Error("Expected identifier after '.'", lexer.peek(1).location);
+                        Token t = lexer.peek(1);
+                        throw error(__LINE__, "Expected identifier after '.'", &t);
                 }
             default:
                 return target;
--- a/sema/Declarations.d	Sun Apr 20 11:47:34 2008 +0200
+++ b/sema/Declarations.d	Sun Apr 20 11:53:40 2008 +0200
@@ -54,7 +54,10 @@
                 auto child = m.child;
                 auto st = cast(DStruct)(target.env.find(target).type);
                 if((child.get in st.members) == null)
-                    throw new Error("Undefined member in "~target.get~" with type "~st.name,st.getLoc);
+                    throw error(__LINE__, "Undefined member in %0 with type %1")
+                        .arg(target.get)
+                        .arg(st.name)
+                        .loc(st.getLoc);
         }
     }