Intellisense приведен в соответствие для 2..5

This commit is contained in:
Mikhalkovich Stanislav 2020-02-15 00:57:23 +03:00
parent 228c9f9aac
commit fa93d77b30
3 changed files with 14 additions and 4 deletions

View file

@ -5575,12 +5575,16 @@ namespace CodeCompletion
public override void visit(diapason_expr_new _diapason_expr_new)
{
_diapason_expr_new.left.visit(this);
/*_diapason_expr_new.left.visit(this);
TypeScope ts = TypeTable.get_compiled_type(new SymInfo("IEnumerable`1", SymbolKind.Type, "System.Collections.Generic.IEnumerable`1"), typeof(IEnumerable<>));
TypeScope elem_ts = returned_scope as TypeScope;
if (elem_ts != null)
ts = ts.GetInstance(new List<TypeScope>() { elem_ts });
returned_scope = ts;
returned_scope = ts;*/
method_call mc = new method_call();
mc.parameters = new expression_list(new List<expression> { _diapason_expr_new.left, _diapason_expr_new.right });
mc.dereferencing_value = new dot_node(new ident("PABCSystem"), new ident("InternalRange"));
mc.visit(this);
}
}
}

View file

@ -2000,14 +2000,19 @@ namespace CodeCompletion
public override void visit(diapason_expr_new _diapason_expr_new)
{
_diapason_expr_new.left.visit(this);
/*_diapason_expr_new.left.visit(this);
TypeScope ts = TypeTable.get_compiled_type(new SymInfo("IEnumerable`1", SymbolKind.Type, "System.Collections.Generic.IEnumerable`1"), typeof(IEnumerable<>));
TypeScope elem_ts = null;
if (returned_scope is ElementScope)
elem_ts = (returned_scope as ElementScope).sc as TypeScope;
if (elem_ts != null)
ts = ts.GetInstance(new List<TypeScope>() { elem_ts });
returned_scope = new ElementScope(ts);
returned_scope = new ElementScope(ts);*/
method_call mc = new method_call();
mc.parameters = new expression_list(new List<expression> { _diapason_expr_new.left, _diapason_expr_new.right});
mc.dereferencing_value = new dot_node(new ident("PABCSystem"), new ident("InternalRange"));
mc.visit(this);
}
}
}

View file

@ -19536,6 +19536,7 @@ namespace PascalABCCompiler.TreeConverter
{
_function_lambda_definition.return_type = null;
}
else _function_lambda_definition.usedkeyword = 1; // значит, это наверняка функция
}
}
else if (_function_lambda_definition.return_type is lambda_inferred_type && stl != null && stl.list.Count > 1 && _function_lambda_definition.usedkeyword == 0)