This commit is contained in:
Mikhalkovich Stanislav 2019-02-22 19:32:28 +03:00
parent 8ae23cfaba
commit 7955456216
4 changed files with 15 additions and 3 deletions

View file

@ -0,0 +1,3 @@
begin
var x := [];
end.

View file

@ -15951,6 +15951,13 @@ namespace PascalABCCompiler.TreeConverter
if (_var_def_statement.vars_type == null && _var_def_statement.inital_value is SyntaxTree.function_lambda_definition)
AddError(get_location(_var_def_statement.inital_value), "IMPOSSIBLE_TO_INFER_TYPES_IN_LAMBDA"); //lroman//
if (_var_def_statement.vars_type == null && _var_def_statement.inital_value is SyntaxTree.pascal_set_constant pc)
{
if (pc.values==null || pc.values.Count == 0)
AddError(get_location(_var_def_statement.inital_value), "IMPOSSIBLE_TO_INFER_SET_TYPE");
}
bool is_event = _var_def_statement.is_event;
if (context.converting_block() == block_type.type_block &&

View file

@ -19,3 +19,4 @@ PROGRAM_NAME_FOR_TYPE_NAME_IS_PROHIBITED=The name 'program' is prohibited as typ
DEFAULT_PARAMS_IN_DELEGATE_TYPE=Procedure type cannot have default parameters
CONSTRUCTOR_CALL_FOR_DELEGATE_TYPES_IS_FORBIDDEN=Constructor call for delegate types is forbidden
SELF_NOT_ALLOWED_IN_METHOD_PARAMS=Self is not allowed as method parameter name
IMPOSSIBLE_TO_INFER_SET_TYPE=Impossible to infer set type

View file

@ -20,3 +20,4 @@ PROGRAM_NAME_FOR_TYPE_NAME_IS_PROHIBITED=Имя 'program' запрещено в
DEFAULT_PARAMS_IN_DELEGATE_TYPE=В процедурном типе не могут быть параметры по умолчанию
CONSTRUCTOR_CALL_FOR_DELEGATE_TYPES_IS_FORBIDDEN=Для типов делегатов запрещен вызов конструктора. Вместо этого присвойте делегату имя подпрограммы или имя другого делегата
SELF_NOT_ALLOWED_IN_METHOD_PARAMS=Параметр метода не может иметь имя Self
IMPOSSIBLE_TO_INFER_SET_TYPE=Нельзя вычислить тип множества