fix #3431
This commit is contained in:
parent
74f69500fa
commit
f70abef278
|
|
@ -15,7 +15,7 @@ internal static class RevisionClass
|
||||||
public const string Major = "3";
|
public const string Major = "3";
|
||||||
public const string Minor = "11";
|
public const string Minor = "11";
|
||||||
public const string Build = "1";
|
public const string Build = "1";
|
||||||
public const string Revision = "3833";
|
public const string Revision = "3835";
|
||||||
|
|
||||||
public const string MainVersion = Major + "." + Minor;
|
public const string MainVersion = Major + "." + Minor;
|
||||||
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;
|
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
%MINOR%=11
|
%MINOR%=11
|
||||||
%REVISION%=3833
|
%REVISION%=3835
|
||||||
%COREVERSION%=1
|
%COREVERSION%=1
|
||||||
%MAJOR%=3
|
%MAJOR%=3
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
3.11.1.3833
|
3.11.1.3835
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
!define VERSION '3.11.1.3833'
|
!define VERSION '3.11.1.3835'
|
||||||
|
|
|
||||||
14
TestSuite/errors/err0549.pas
Normal file
14
TestSuite/errors/err0549.pas
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
type
|
||||||
|
Matr = class
|
||||||
|
static function operator implicit(a: array [,] of integer): Matr;
|
||||||
|
begin
|
||||||
|
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
begin
|
||||||
|
var a: array of integer;
|
||||||
|
var m: Matr;
|
||||||
|
m := a;
|
||||||
|
end.
|
||||||
|
|
@ -1020,7 +1020,15 @@ namespace PascalABCCompiler.TreeRealization
|
||||||
if (left is ref_type_node && right is ref_type_node)
|
if (left is ref_type_node && right is ref_type_node)
|
||||||
return is_type_or_original_generics_equal((left as ref_type_node).pointed_type, (right as ref_type_node).pointed_type);
|
return is_type_or_original_generics_equal((left as ref_type_node).pointed_type, (right as ref_type_node).pointed_type);
|
||||||
if (left.type_special_kind == SemanticTree.type_special_kind.array_kind && right.type_special_kind == SemanticTree.type_special_kind.array_kind)
|
if (left.type_special_kind == SemanticTree.type_special_kind.array_kind && right.type_special_kind == SemanticTree.type_special_kind.array_kind)
|
||||||
return is_type_or_original_generics_equal(left.element_type, right.element_type);
|
{
|
||||||
|
var lctn = left as compiled_type_node;
|
||||||
|
var rctn = right as compiled_type_node;
|
||||||
|
if (lctn == null || rctn == null)
|
||||||
|
return is_type_or_original_generics_equal(left.element_type, right.element_type);
|
||||||
|
if (lctn != null && rctn != null && lctn.rank == rctn.rank)
|
||||||
|
return is_type_or_original_generics_equal(left.element_type, right.element_type);
|
||||||
|
}
|
||||||
|
|
||||||
return left == right;
|
return left == right;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue