# HG changeset patch # User aziz # Date 1187871242 0 # Node ID f13d551d7c4fd7d2565ac425dae0bfe2d8ff224c # Parent 3ac651ea83fb9634771a02f249783782e267e9c3 - Added error messages MID.InContract and MID.OutContract. diff -r 3ac651ea83fb -r f13d551d7c4f trunk/src/dil/Messages.d --- a/trunk/src/dil/Messages.d Wed Aug 22 20:13:00 2007 +0000 +++ b/trunk/src/dil/Messages.d Thu Aug 23 12:14:02 2007 +0000 @@ -58,6 +58,8 @@ ExpectedButFound, RedundantStorageClass, TemplateTupleParameter, + InContract, + OutContract, // Help messages: HelpMain, diff -r 3ac651ea83fb -r f13d551d7c4f trunk/src/dil/Parser.d --- a/trunk/src/dil/Parser.d Wed Aug 22 20:13:00 2007 +0000 +++ b/trunk/src/dil/Parser.d Thu Aug 23 12:14:02 2007 +0000 @@ -505,14 +505,14 @@ nT(); break; case T.In: - //if (func.inBody) - // TODO: issue error msg. + if (func.inBody) + error(MID.InContract); nT(); func.inBody = parseStatements(); continue; case T.Out: - //if (func.outBody) - // TODO: issue error msg. + if (func.outBody) + error(MID.OutContract); nT(); if (token.type == T.LParen) { @@ -528,7 +528,7 @@ default: error(MID.ExpectedButFound, "FunctionBody", token.srcText); } - break; // exit while loop + break; // Exit loop. } set(func, begin); func.finishConstruction(); @@ -4015,7 +4015,7 @@ nT(); // Skip Identifier. nT(); // Skip Ellipses. if (token.type == T.Comma) - error(MID.TemplateTupleParameter); // TODO: issue error msg for variadic param not being last. + error(MID.TemplateTupleParameter); tp = new TemplateTupleParameter(ident); break; case T.Comma, T.RParen, T.Colon, T.Assign: diff -r 3ac651ea83fb -r f13d551d7c4f trunk/src/lang_de.d --- a/trunk/src/lang_de.d Wed Aug 22 20:13:00 2007 +0000 +++ b/trunk/src/lang_de.d Thu Aug 23 12:14:02 2007 +0000 @@ -53,6 +53,8 @@ "erwartete '{1}', fand aber '{2}'.", "'{1}' ist redundant.", "Template-Tupel-Parameter dürfen nur am Ende auftreten.", + "der 'in'-Vertrag der Funktion wurde bereits geparsed.", + "der 'out'-Vertrag der Funktion wurde bereits geparsed.", // Help messages: `dil v{1} diff -r 3ac651ea83fb -r f13d551d7c4f trunk/src/lang_en.d --- a/trunk/src/lang_en.d Wed Aug 22 20:13:00 2007 +0000 +++ b/trunk/src/lang_en.d Thu Aug 23 12:14:02 2007 +0000 @@ -53,6 +53,8 @@ "expected '{1}', but found '{2}'.", "'{1}' is redundant.", "template tuple parameters can only be last.", + "the functions 'in' contract was already parsed.", + "the functions 'out' contract was already parsed.", // Help messages: `dil v{1} diff -r 3ac651ea83fb -r f13d551d7c4f trunk/src/lang_tr.d --- a/trunk/src/lang_tr.d Wed Aug 22 20:13:00 2007 +0000 +++ b/trunk/src/lang_tr.d Thu Aug 23 12:14:02 2007 +0000 @@ -53,6 +53,8 @@ "'{1}' beklendi, ama '{2}' bulundu.", "'{1}' lüzumsuz.", "şablon tuple parametre son sırada olmalı.", + "fonksiyonun 'in' kontratı daha önceden ayrıştırılmış.", + "fonksiyonun 'out' kontratı daha önceden ayrıştırılmış.", // Help messages: `dil v{1}