# HG changeset patch # User Aziz K?ksal # Date 1191509459 -7200 # Node ID 3ead178e066284b15f1462c4b88b9cc44822ab72 # Parent 7a6bfa569a5264563fdff8e3a4d599807f971b9a Added message MID.InvalidUnicodeEscapeSequence. diff -r 7a6bfa569a52 -r 3ead178e0662 trunk/src/dil/Lexer.d --- a/trunk/src/dil/Lexer.d Thu Oct 04 09:55:07 2007 +0200 +++ b/trunk/src/dil/Lexer.d Thu Oct 04 16:50:59 2007 +0200 @@ -1827,13 +1827,15 @@ else { error(sequenceStart, MID.InsufficientHexDigits); - return c; + return REPLACEMENT_CHAR; } } + if (!isEncodable(c)) { c = REPLACEMENT_CHAR; - error(sequenceStart, MID.InvalidUnicodeCharacter); + assert(*sequenceStart == '\\'); + error(sequenceStart, MID.InvalidUnicodeEscapeSequence, sequenceStart[0..p-sequenceStart]); } return c; case 'u': @@ -1876,7 +1878,7 @@ error(sequenceStart, MID.UndefinedHTMLEntity, sequenceStart[0 .. p - sequenceStart]); } else - error(sequenceStart, MID.UnterminatedHTMLEntity); + error(sequenceStart, MID.UnterminatedHTMLEntity, sequenceStart[0 .. p - sequenceStart]); } else error(sequenceStart, MID.InvalidBeginHTMLEntity); diff -r 7a6bfa569a52 -r 3ead178e0662 trunk/src/dil/Messages.d --- a/trunk/src/dil/Messages.d Thu Oct 04 09:55:07 2007 +0200 +++ b/trunk/src/dil/Messages.d Thu Oct 04 16:50:59 2007 +0200 @@ -35,6 +35,7 @@ UnterminatedBackQuoteString, // \x \u \U UndefinedEscapeSequence, + InvalidUnicodeEscapeSequence, InsufficientHexDigits, // \&[a-zA-Z][a-zA-Z0-9]+; UndefinedHTMLEntity, diff -r 7a6bfa569a52 -r 3ead178e0662 trunk/src/lang_de.d --- a/trunk/src/lang_de.d Thu Oct 04 09:55:07 2007 +0200 +++ b/trunk/src/lang_de.d Thu Oct 04 16:50:59 2007 +0200 @@ -33,10 +33,11 @@ "unterminierte Backquote-Zeichenkette.", // \x \u \U "undefinierte Escapesequenz '{0}' gefunden.", + "ungültige Unicode-Escapesequenz '{0}' gefunden.", "unzureichende Anzahl von Hexziffern in Escapesequenz.", // \&[a-zA-Z][a-zA-Z0-9]+; "undefinierte HTML-Entität '{0}'", - "unterminierte HTML-Entität.", + "unterminierte HTML-Entität '{0}'.", "HTML-Entitäten müssen mit einem Buchstaben beginnen.", // integer overflows "Dezimalzahl überläuft im Vorzeichenbit.", diff -r 7a6bfa569a52 -r 3ead178e0662 trunk/src/lang_en.d --- a/trunk/src/lang_en.d Thu Oct 04 09:55:07 2007 +0200 +++ b/trunk/src/lang_en.d Thu Oct 04 16:50:59 2007 +0200 @@ -33,10 +33,11 @@ "unterminated back quote string.", // \x \u \U "found undefined escape sequence '{0}'.", + "found invalid Unicode escape sequence '{0}'.", "insufficient number of hex digits in escape sequence.", // \&[a-zA-Z][a-zA-Z0-9]+; "undefined HTML entity '{0}'", - "unterminated HTML entity.", + "unterminated HTML entity '{0}'.", "HTML entities must begin with a letter.", // integer overflows "decimal number overflows sign bit.", diff -r 7a6bfa569a52 -r 3ead178e0662 trunk/src/lang_fi.d --- a/trunk/src/lang_fi.d Thu Oct 04 09:55:07 2007 +0200 +++ b/trunk/src/lang_fi.d Thu Oct 04 16:50:59 2007 +0200 @@ -33,10 +33,11 @@ "päättämätön gravisaksenttimerkkijono.", // \x \u \U "löydettiin määrittelemätön escape-sekvenssi.", // TODO: Insert '{0}' + "found invalid Unicode escape sequence '{0}'.", // TODO: translate "riittämätön määrä heksanumeroita escape-sekvenssissä.", // \&[a-zA-Z][a-zA-Z0-9]+; "määrittelemätön HTML-entiteetti '{0}'", - "päättämätön HTML-entiteetti.", + "päättämätön HTML-entiteetti.", // TODO: insert '{0}' "HTML-entiteettien tulee alkaa kirjaimella.", // integer overflows "desimaaliluku ylivuotaa etumerkin.", diff -r 7a6bfa569a52 -r 3ead178e0662 trunk/src/lang_tr.d --- a/trunk/src/lang_tr.d Thu Oct 04 09:55:07 2007 +0200 +++ b/trunk/src/lang_tr.d Thu Oct 04 16:50:59 2007 +0200 @@ -33,10 +33,11 @@ "kapanmamış ters tırnak dizgisi.", // \x \u \U "tanımlanmamış çıkış serisi '{0}' bulundu.", + "geçersiz Unikod çıkış serisi '{0}' bulundu.", "heksadesimal çıkış serisi sayıları yeterli değil.", // \&[a-zA-Z][a-zA-Z0-9]+; "tanımlanmamış HTML varlık '{0}'", - "kapanmamış HTML varlık.", + "kapanmamış HTML varlık '{0}'.", "HTML varlık bir harf ile başlamalı.", // integer overflows "desimal rakamın bit işareti taşdı.",