Merge remote-tracking branch 'origin/master' into windows
[scilab.git] / scilab / modules / ast / src / cpp / parse / printerror.cpp
index f467b03..65c64fe 100644 (file)
@@ -23,9 +23,9 @@ extern "C"
 #include "charEncoding.h"
 }
 
-void ParserSingleInstance::PrintError(const std::wstring& msg)
+void ParserSingleInstance::PrintError(const std::string& msg)
 {
-    std::wostringstream ostr;
+    std::ostringstream ostr;
     char *codeLine = (char *) malloc(4096 * sizeof(char));
 
     //If the error is a the very beginning of a line
@@ -40,36 +40,34 @@ void ParserSingleInstance::PrintError(const std::wstring& msg)
     ConfigVariable::fillWhereError(yylloc.first_line);
 
     /** Print where in the script the error is located */
-    wchar_t* str = to_wide_string(ParserSingleInstance::getCodeLine(yylloc.first_line, &codeLine));
+    char* str = ParserSingleInstance::getCodeLine(yylloc.first_line, &codeLine);
     ostr << str;
     // add EOL only if the code line doesn't already contains it.
-    if (wcscmp(str + wcslen(str) - 1, L"\n") != 0)
+    if (strcmp(str + strlen(str) - 1, "\n") != 0)
     {
         ostr << std::endl;
     }
     free(codeLine);
-    FREE(str);
 
     /** Underline what causes the trouble */
     int i = 0;
     for (i = 1 ; i < yylloc.first_column ; ++i)
     {
-        ostr << L" ";
+        ostr << " ";
     }
-    ostr << L"^";
+    ostr << "^";
     for (i = i + 1 ; i < yylloc.last_column ; ++i)
     {
-        ostr << L"~";
+        ostr << "~";
     }
     if ( yylloc.first_column != yylloc.last_column )
     {
-        ostr << L"^" ;
+        ostr << "^" ;
     }
     ostr << std::endl;
 
     /** Display Parser message  */
-    std::wstring wstrError(_W("Error: "));
-    ostr << wstrError << msg << std::endl;
+    ostr << _("Error: ") << msg << std::endl;
 
     ParserSingleInstance::appendErrorMessage(ostr.str());
 }