Mercurial > projects > dang
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); } }