changeset 432:3ead178e0662

Added message MID.InvalidUnicodeEscapeSequence.
author Aziz K?ksal <aziz.koeksal@gmail.com>
date Thu, 04 Oct 2007 16:50:59 +0200
parents 7a6bfa569a52
children 063cd016c913
files trunk/src/dil/Lexer.d trunk/src/dil/Messages.d trunk/src/lang_de.d trunk/src/lang_en.d trunk/src/lang_fi.d trunk/src/lang_tr.d
diffstat 6 files changed, 14 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- 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);
--- 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,
--- 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.",
--- 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.",
--- 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.",
--- 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ı.",