end of line
[scilab.git] / scilab / modules / scicos / src / translator / exceptionHandling / msgDico.ml
1 (*
2  *  Translator from Modelica 2.x to flat Modelica
3  *
4  *  Copyright (C) 2005 - 2007 Imagine S.A.
5  *  For more information or commercial use please contact us at www.amesim.com
6  *
7  *  This program is free software; you can redistribute it and/or
8  *  modify it under the terms of the GNU General Public License
9  *  as published by the Free Software Foundation; either version 2
10  *  of the License, or (at your option) any later version.
11  *
12  *  This program is distributed in the hope that it will be useful,
13  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  *  GNU General Public License for more details.
16  *
17  *  You should have received a copy of the GNU General Public License
18  *  along with this program; if not, write to the Free Software
19  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
20  *
21  *)
22
23 (* Compilation message translation dictionary *)
24
25 let msgs = [
26   ("_UnknownIdentifier",
27     [("ENG", "Unknown identifier")]);
28   ("_EnumTypeDefWithDuplicLit",
29     [("ENG", "Enumeration type definition with duplicated literal")]);
30   ("_NotYetImplemented",
31     [("ENG", "Use of not yet implemented feature:")]);
32   ("_EncapsulatedCannotBeAppliedTo",
33     [("ENG", "\"encapsulated\" keyword cannot be applied to")]);
34   ("_UnspecifiedEnumLits",
35     [("ENG", "Enumeration literals not specified")]);
36   ("_CommandLine",
37     [("ENG", "command line")]);
38   ("_CharacterPosition",
39     [("ENG", "Character position")]);
40   ("_LineNumber",
41     [("ENG", "Line number")]);
42   ("_ColumnNumber",
43     [("ENG", "Column number")]);
44   ("_Context",
45     [("ENG", "Context")]);
46   ("_UntranslatedText",
47     [("ENG", "Untranslated text")]);
48   ("_NonBooleanIfCondExpr",
49     [("ENG", "Non-Boolean \"if\" condition expression")]);
50   ("_TypeConflictsInIfAlternExprs",
51     [("ENG", "If alternative expressions must be of the same type")]);
52   ("_InvalidTypeInRangeExpr",
53     [("ENG", "Invalid type of element in range expression")]);
54   ("_NonIntegerRangeExpr",
55     [("ENG", "Non-integer range expression")]);
56   ("_TypeConflictsInVectorExpr",
57     [("ENG", "Elements of different types in vector expression")]);
58   ("_NonPredefTypeVectorExpr",
59     [("ENG", "Only vector expressions of predefined type elements are supported")]);
60   ("_ArrayDimMustAgreeToPerform",
61     [("ENG", "Array dimensions must agree to perform")]);
62   ("_ImplicitIterRange",
63     [("ENG", "Implicit iteration range")]);
64   ("_UnaryOperPLUS",
65     [("ENG", "Unary operator +")]);
66   ("_MatrixExpr",
67     [("ENG", "Matrix expression")]);
68   ("_BinaryOperDIFF",
69     [("ENG", "Binary operator <>")]);
70   ("_BinaryOperEQUEQU",
71     [("ENG", "Binary operator ==")]);
72   ("_TopLevelExpr",
73     [("ENG", "expression statement")]);
74   ("_TopLevelAlgorithm",
75     [("ENG", "algorithmic statement")]);
76   ("_WithinClause",
77     [("ENG", "within clause")]);
78   ("_ImportClause",
79     [("ENG", "import clause")]);
80   ("_InvalidTypeDef",
81     [("ENG", "Invalid \"type\" definition")]);
82   ("_ShortClassDef",
83     [("ENG", "Short class definition")]);
84   ("_ClassDefByExtension",
85     [("ENG", "Class definition by extension")]);
86   ("_InvalidUseOfEnumKeyword",
87     [("ENG", "Invalid use of \"enumeration\" keyword")]);
88   ("_ClassExtendsDef",
89     [("ENG", "Class definition by extension")]);
90   ("_OperAppliedToNonNumericExpr",
91     [("ENG", "operator applied to non numeric expression")]);
92   ("_PowerOperOnNonSquareArray",
93     [("ENG", "Cannot perform power operation on non square array")]);
94   ("_ArrayDimMustAgreeToPerform",
95     [("ENG", "Array dimensions must agree to perform")]);
96   ("_EachAppliedToNonArrayElem",
97     [("ENG", "Cannot apply \"each\" keyword to non-array type element")]);
98   ("_EquTermsNotOfTheSameType",
99     [("ENG", "Equation terms must be of the same type")]);
100   ("_ClassElemFoundInExpr",
101     [("ENG", "Component element expected, but class element found")]);
102   ("_InvalidExtensionDef",
103     [("ENG", "Invalid extension definition")]);
104   ("_VariablityConflictsInCompDef",
105     [("ENG", "Variability conflicts in component definition")]);
106   ("_CausalityConflictsInCompDef",
107     [("ENG", "Causality conflicts in component definition")]);
108   ("_TypeConflictsInAssign",
109     [("ENG", "Type conflicts in assignment expression")]);
110   ("_InvalidExprInElemModif",
111     [("ENG", "Invalid expression in element modification")]);
112   ("_FieldAccessInElemModifExpr",
113     [("ENG", "Field access in element modification expression")]);
114   ("_ElementRedeclaration",
115     [("ENG", "Element redeclaration")]);
116   ("_InvalidTypeOfClassSpec",
117     [("ENG", "Invalid type of class specifier")]);
118   ("_RedeclarePredefTypeAttrib",
119     [("ENG", "Redeclaration not allowed for predefined type attributes")]);
120   ("_InvalidClassElemModif",
121     [("ENG", "Invalid modification of class element")]);
122   ("_FinalElemModifNotAllowed",
123     [("ENG", "Cannot modify final element")]);
124   ("_InvalidElemModifDef",
125     [("ENG", "Invalid element modification definition")]);
126   ("_ArrayDimMismatchInEqu",
127     [("ENG", "Array dimensions do not agree in equation")]);
128   ("_ComponentTypeEqu",
129     [("ENG", "Component type equation")]);
130   ("_AlgoClause",
131     [("ENG", "Algorithm clause")]);
132   ("_InvalidKeyWordEndInExpr",
133     [("ENG", "Invalid use of expression \"end\"")]);
134   ("_InvalidTypeOfFuncValueInEqu",
135     [("ENG", "Invalid type of function value in equation")]);
136   ("_FuncArgumentReduction",
137     [("ENG", "Function argument reduction")]);
138   ("_TooManyArgsInFuncCall",
139     [("ENG", "Too many arguments in function call")]);
140   ("_FuncCallWithDuplicateArg",
141     [("ENG", "Function call with duplicate named argument")]);
142   ("_MixedPositAndNamedFuncArgPass",
143     [("ENG", "Mixed positional and named function argument passing not allowed")]);
144   ("_NonInputFuncArgElem",
145     [("ENG", "Function called with non input argument")]);
146   ("_NoInnerDeclForOuterElem",
147     [("ENG", "Missed inner declaration for outer element")]);
148   ("_BlockElem",
149     [("ENG", "Block element")]);
150   ("_ExpandableConnector",
151     [("ENG", "Expandable connector")]);
152   ("_PredefinedTypeAttribModif",
153     [("ENG", "Modification of predefined type attribute")]);
154   ("_UnsupportedFeature",
155     [("ENG", "Use of unsupported feature:")]); (*to be documented*)
156   ("_OperAppliedToNonBoolExpr",
157     [("ENG", "operator applied to non-Boolean expression")]);
158   ("_TypeDef",
159     [("ENG", "\"type\" definition")]);
160   ("_AddOper",
161     [("ENG", "addition operation")]);
162   ("_TypeInconsistWithComparOper",
163     [("ENG", "Type of operands inconsistent with comparison operation")]);
164   ("_OperBetweenScalarAndArray",
165     [("ENG", "operator between scalar and array type elements")]);
166   ("_Addition",
167     [("ENG", "addition")]);
168   ("_Subtraction",
169     [("ENG", "subtraction")]);
170   ("_TypeInconsistentWithDivOper",
171     [("ENG", "Type of operands inconsistent with division operation")]);
172   ("_ArrayDimsNonCompatibleWithMult",
173     [("ENG", "Arrays do not have compatible dimensions to be multiplied")]);
174   ("_ERROR",
175     [("ENG", "ERROR")]);
176   ("_ElemExpected",
177     [("ENG", "element expected")]);
178   ("_UseOfTypePrefixInShortClassDef",
179     [("ENG", "Use of type prefix not allowed in short class definition")]);
180   ("_UseOfSubsInShortClassDef",
181     [("ENG", "Use of subscripts not allowed in short class definition")]);
182   ("_NonEmptyFuncCallUsedAsAnEqu",
183     [("ENG", "Non-empty function call cannot be used as an equation")]);
184   ("_DuplicatedModifOfElem",
185     [("ENG", "Duplicated modification of element")]);
186   ("_ComponentTypeElemInstant",
187     [("ENG", "Component type element instantiation")]);
188   ("_PredefinedTypeElemInstant",
189     [("ENG", "Predefined type element instantiation")]);
190   ("_Component",
191     [("ENG", "Component")]);
192   ("_CannotAccessProtectElem",
193     [("ENG", "Cannot access protected element")]);
194   ("_CannotAccessOuterElem",
195     [("ENG", "Cannot access outer element")]);
196   ("_UnknownFunction",
197     [("ENG", "Unknown function")]);
198   ("_ZeroRaisedToTheZeroPower",
199     [("ENG", "Zero raised to the zero power")]);
200   ("_IntegerRaisedToIntegerPower",
201     [("ENG", "Integer raised to an integer power")]);
202   ("_RealRaisedToIntegerPower",
203     [("ENG", "Real raised to an integer power")]);
204   ("_VectorRaisedToIntegerPower",
205     [("ENG", "Vector raised to an integer power")]);
206   ("_NonIntegerArrayDim",
207     [("ENG", "Non-Integer array dimension")]);
208   ("_EnumType",
209     [("ENG", "Enumeration type")]);
210   ("_StringType",
211     [("ENG", "String type")]);
212   ("_BooleanType",
213     [("ENG", "Boolean type")]);
214   ("_BooleanOperator",
215     [("ENG", "Boolean operator")]);
216   ("_DynamicArrayType",
217     [("ENG", "Dynamic array type")]);
218   ("_StaticArrayType",
219     [("ENG", "Static array type")]);
220   ("_InstanceType",
221     [("ENG", "Instance type")]);
222   ("_ConditionalEqu",
223     [("ENG", "Conditional equation")]);
224   ("_FieldAccessExpr",
225     [("ENG", "Field access expression")]);
226   ("_IndexedAccessExpr",
227     [("ENG", "Indexed access expression")]);
228   ("_RangeExpr",
229     [("ENG", "Range expression")]);
230   ("_Expr",
231     [("ENG", "Expression")]);
232   ("_ExprOfType",
233     [("ENG", "Expression of type")]);
234   ("_TupleExpr",
235     [("ENG", "Tuple expression")]);
236   ("_VectorReduct",
237     [("ENG", "Vector reduction")]);
238   ("_LoopVar",
239     [("ENG", "Loop variable")]);
240   ("_PredefinedTypeClassRef",
241     [("ENG", "Predefined type class reference")]);
242   ("_NonExternalCallClassRef",
243     [("ENG", "Use of class reference in expression is allowed only for external function call")]);
244   ("_ExternalProcedureCall",
245     [("ENG", "External procedure call")]);
246   ("_ExternalCallToLanguage",
247     [("ENG", "External call to language")]);
248   ("_ExternalCallWithLeftHandSideExpr",
249     [("ENG", "External call with left hand side expression")]);
250   ("_AssignExprInElemModif",
251     [("ENG", "Assignment expression in element modification")]);
252   ("_CannotSubscriptANonArrayTypeElem",
253     [("ENG", "Cannot subscript a non array type element")]);
254   ("_NonIntegerArraySubscript",
255     [("ENG", "Non-Integer array subscript")]);
256   ("_RangeStepValueCannotBeNull",
257     [("ENG", "Range step value cannot be null")]);
258   ("_TypeOfA",
259     [("ENG", "Type of A")]);
260   ("_TypeOfB",
261     [("ENG", "Type of B")]);
262   ("_Source",
263     [("ENG", "Source")]);
264   ("_ClassName",
265     [("ENG", "Class name")]);
266   ("_FunctionCallExpr",
267     [("ENG", "Function call expression")]);
268   ("_VectorExpr",
269     [("ENG", "Vector expression")]);
270   ("_ExprKind",
271     [("ENG", "Expression kind")]);
272   ("_TypeOfThenBranche",
273     [("ENG", "Type of then branche")]);
274   ("_TypeOfElseBranche",
275     [("ENG", "Type of else branche")]);
276   ("_TypePrefix",
277     [("ENG", "Type prefix")]);
278   ("_ElemFound",
279     [("ENG", "Element found")]);
280   ("_TypeSpecifierVariability",
281     [("ENG", "Type specifier variability")]);
282   ("_TypeSpecifierCausality",
283     [("ENG", "Type specifier causality")]);
284   ("_TypeOfCondition",
285     [("ENG", "Type of \"condition\"")]);
286   ("_TypeFound",
287     [("ENG", "Type found")]);
288   ("_ComponentElement",
289     [("ENG", "Component element")]);
290   ("_ExpectedType",
291     [("ENG", "Expected type")]);
292   ("_ClassElement",
293     [("ENG", "Class element")]);
294   ("_ArrayType",
295     [("ENG", "Array type")]);
296   ("_ClassSpecifier",
297     [("ENG", "Class specifier")]);
298   ("_TypeOfFuncValue",
299     [("ENG", "Type of function value")]);
300   ("_TypeOfFunctionOutput",
301     [("ENG", "Type of function output")]);
302   ("_CannotInheritFrom",
303     [("ENG", "Cannot inherit from")]);
304   ("_ComponentTypeElement",
305     [("ENG", "Component type element")]);
306   ("_PredefinedTypeElement",
307     [("ENG", "Predefined type element")]);
308   ("_AlreadyDeclaredInParentClass",
309     [("ENG", "already declared in parent class")]);
310   ("_InheritFromDiffClassKindsNotAllowed",
311     [("ENG", "Inheritance from different class kinds not allowed")]);
312   ("_MismatchingTypes",
313     [("ENG", "Mismatching types")]);
314   ("_InheritFromFunctionNotAllowed",
315     [("ENG", "Inheritance from function not allowed")]);
316   ("_InvalidAnnOfInvFunc",
317     [("ENG", "Invalid annotation of inverse functions:")]);
318   ("_RedeclarationNotAllowed",
319     [("ENG", "Redeclaration not allowed")]);
320   ("_UseOfEachKeywordNotAllowed",
321     [("ENG", "Use of \"each\" keyword not allowed")]);
322   ("_UseOfFinalKeywordNotAllowed",
323     [("ENG", "Use of \"final\" keyword not allowed")]);
324   ("_UnspecifiedModification",
325     [("ENG", "Unspecified modification")]);
326   ("_InvalidModifExpr",
327     [("ENG", "Invalid modification expression")]);
328   ("_InvalidFuncCallExpr",
329     [("ENG", "Invalid function call expression")]);
330   ("_InvalidTypeOfFuncCallExpr",
331     [("ENG", "Invalid type of function call expression")]);
332   ("_ClassType",
333     [("ENG", "Class type")]);
334   ("_Function",
335     [("ENG", "Function")]);
336   ("_FuncArgReductionNotAllowed",
337     [("ENG", "Function argument reduction not allowed")]);
338   ("_CannotUseUnnamedFuncArg",
339     [("ENG", "Cannot use unnamed function argument")]);
340   ("_InvalidFuncArgModif",
341     [("ENG", "Invalid function argument modification")]);
342   ("_UnknownArgName",
343     [("ENG", "Unknown argument name")]);
344   ("_CannotUseCausPrefixInGenClass",
345     [("ENG", "Input or output component found in generic class")]);
346   ("_FuncDefInNonInstantiatedClass",
347     [("ENG", "Function defined in non instantiated class")]);
348   ("_InvalidTypeOfArgInConnectStat",
349     [("ENG", "Invalid type of argument in connect statement")]);
350   ("_CannotConnectFlowAndNonFlowComp",
351     [("ENG", "Cannot connect flow and non-flow components")]);
352   ("_InvalidTypeOfWhenCond",
353     [("ENG", "Invalid type of when condition")]);
354   ("_NameResolution",
355     [("ENG", "Name resolution")]);
356   ("_InstantiationOfComponent",
357     [("ENG", "Instantiation of component")]);
358   ("_CodeGenerationForComponent",
359     [("ENG", "Code generation for component")]);
360   ("_ExecutionStep",
361     [("ENG", "Execution step")]);
362   ("_MissingDeclEquForFixedId",
363     [("ENG", "Missing declaration equation for fixed identifier")]);
364   ("_ComponentFuncInvocation",
365     [("ENG", "Component function invocation")]);
366   ("_FuncWithManyOutputs",
367     [("ENG", "Function with many outputs")]);
368   ("_InstantiationOfClass",
369     ["ENG", "Instantiation of class"]);
370   ("_CodeGenerationForClass",
371     ["ENG", "Code generation for class"]);
372   ("_InstanceUsedInConnection",
373     [("ENG", "instance used in connection statement")]);
374   ("_Unclosed",
375     [("ENG", "Unclosed")]);
376   ("_InvalidMatrixConstruct",
377     [("ENG", "Invalid matrix construction")]);
378   ("_InvalidArrayConstruct",
379     [("ENG", "Invalid array construction")]);
380   ("_SyntaxError",
381     [("ENG", "Syntax error")]);
382   ("_SyntacticAnalysis",
383     [("ENG", "Syntactic analysis")]);
384   ("_PredefType",
385     [("ENG", "Predefined type")]);
386   ("_WhenClausesCannotBeNested",
387     [("ENG", "When clauses cannot be nested")]);
388   ("_InvalidWhenEquation",
389     [("ENG", "Invalid form of equation within when clause")]);
390   ("_WhenConditionMustBeDiscrete",
391     [("ENG", "When condition must be discrete-time expression")]);
392   ("_ArgTypeMismatch",
393     [("ENG", "Argument type mismatch")]);
394   ("_VariabilityOfA",
395     [("ENG", "Variability of A")]);
396   ("_VariabilityOfB",
397     [("ENG", "Variability of B")]);
398   ("_VariabilityConflicts",
399     [("ENG", "Variability conflicts")]);
400   ("_CannotUseNamedArgWithBuiltInOper",
401     [("ENG", "Cannot use named argument with a built-in operator or function")]);
402   ("_OperArgMustBeAVar",
403     [("ENG", "operator argument must be a variable")]);
404   ("_ArgVariabilityMismatch",
405     [("ENG", "Argument variability mismatch")]);
406   ("_ExpectedVariability",
407     [("ENG", "Expected variability")]);
408   ("_VariabilityFound",
409     [("ENG", "Variability found")]);
410   ("_EquNotAllowedInTheDefOf",
411     [("ENG", "Equations not allowed in the definition of")]);
412   ("_OperCannotBeUsedWithinFuncDef",
413     [("ENG", "operator cannot be used within function definition")]);
414   ("_ArgDimMismatchInVectCall",
415     [("ENG", "Arguments dimensions mismatch in vectorized function call")]);
416   ("_ArgDimMismatch",
417     [("ENG", "Argument dimension mismatch")]);
418   ("_TooFewArgsInFuncCall",
419     [("ENG", "Too few arguments in function call")]);
420   ("_LHSOfDiscreteEquMustBeAVar",
421     [("ENG", "Left hand side of discrete equation must be a variable")]);
422   ("_InvalidVarOfRangeExpr",
423     [("ENG", "Invalid variability of range expression")]);
424   ("_RealExponentOfNegativeNumber",
425     [("ENG", "Real exponentiation of negative number")]);
426   ("_ZeroRaisedToNegativePower",
427     [("ENG", "Zero raised to negative power")]);
428   ("_IllegalCharacter",
429     [("ENG", "Illegal character")]); (*to be documented*)
430   ("_InvalidExternalFuncName",
431     [("ENG", "Invalid external function name")]); (*to be documented*)
432   ("_LHSOfExternalCall",
433     [("ENG", "Left hand side of external call")]); (*to be documented*)
434   ("_InvalidArgOfExternalCall",
435     [("ENG", "Invalid argument of external call")]); (*to be documented*)
436   ("_CannotAccessToPredefTypeAttrib",
437     [("ENG", "Cannot access predefined type attribute")]);
438   ("_InvalidCondEquation",
439     [("ENG", "Invalid conditional equation")]);
440   ("_IndexOutOfBound",
441     [("ENG", "Index out of bound")]);
442   ("_DivisionByZero",
443     [("ENG", "Division by zero")]);
444   ("_PredefinedOperator",
445     [("ENG", "Predefined operator")]);
446   ("_InvalidArgOfOper",
447     [("ENG", "Invalid argument of operator")]);
448   ("_UnsupportedDerOperArg",
449     [("ENG", "Unsupported \"der\" operator argument")]);
450   ("_InvalidInteger",
451     [("ENG", "Invalid Integer representation")]);
452   ("_NonSupportedTypeOfFuncInOut",
453     [("ENG", "Non supported type of function input or output")]);
454   ("_DuplicateDeclarationOfElement",
455     [("ENG", "Duplicate declaration of element")]) (* to be documented *)
456   ]
457
458 let translate msg =
459   try
460     List.assoc "ENG" (List.assoc msg msgs)
461   with
462     exn -> msg;