bug fix #1447
This commit is contained in:
parent
c60d68e969
commit
d5f268e496
|
|
@ -73,7 +73,7 @@ namespace PascalABCCompiler.SyntaxTreeConverters
|
|||
|
||||
/*try
|
||||
{
|
||||
root.visit(new SimplePrettyPrinterVisitor(@"d:\\zzz4.txt"));
|
||||
//root.visit(new SimplePrettyPrinterVisitor(@"d:\\zzz4.txt"));
|
||||
}
|
||||
catch(Exception e)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -60,8 +60,6 @@ namespace PascalABCCompiler.TreeConverter
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Обрабатывает случай, когда левая часть присваивания short string.
|
||||
/// </summary>
|
||||
|
|
@ -198,7 +196,10 @@ namespace PascalABCCompiler.TreeConverter
|
|||
{
|
||||
var cfr = to as class_field_reference;
|
||||
cfr.field.type = from.type;
|
||||
cfr.type = from.type;
|
||||
cfr.type = from.type; // Это неверно работает когда yieldится процедура #1439
|
||||
// SSM 1.11.18 попытка правки возвращения процедуры в yield
|
||||
//if (from.type.semantic_node_type == semantic_node_type.delegated_method)
|
||||
|
||||
cfr.field.inital_value = context.GetInitalValueForVariable(cfr.field, cfr.field.inital_value);
|
||||
}
|
||||
else if (to is local_block_variable_reference)
|
||||
|
|
|
|||
|
|
@ -11346,6 +11346,7 @@ namespace PascalABCCompiler.TreeConverter
|
|||
is_direct_type_decl = false;
|
||||
if (_type_declaration.type_def is SyntaxTree.named_type_reference||
|
||||
_type_declaration.type_def is SyntaxTree.ref_type || _type_declaration.type_def is SyntaxTree.string_num_definition ||
|
||||
_type_declaration.type_def is SyntaxTree.sequence_type || //SSM 01.11.2018
|
||||
tn.type_special_kind == PascalABCCompiler.SemanticTree.type_special_kind.array_kind)// ||
|
||||
/*tn.type_special_kind == PascalABCCompiler.SemanticTree.type_special_kind.set_type*/
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue