This commit is contained in:
parent
ff55c29fee
commit
13c677e66e
16
TestSuite/extensionoperators5.pas
Normal file
16
TestSuite/extensionoperators5.pas
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
function operator=<T>(x,y: Stack<T>): boolean; extensionmethod;
|
||||
begin
|
||||
Result := True
|
||||
end;
|
||||
|
||||
function operator<><T>(x,y: Stack<T>): boolean; extensionmethod;
|
||||
begin
|
||||
Result := not(x = y);
|
||||
end;
|
||||
|
||||
begin
|
||||
var a1 := new Stack<integer>;
|
||||
var a2 := new Stack<integer>;
|
||||
assert(a1 = a2);
|
||||
assert(not (a1 <> a2));
|
||||
end.
|
||||
|
|
@ -2091,7 +2091,14 @@ namespace PascalABCCompiler.TreeRealization
|
|||
|
||||
private void conform_basic_function(string name, int base_func_num)
|
||||
{
|
||||
SymbolInfo si1 = _original_generic.find_first_in_type(name, true);
|
||||
SymbolInfo si1 = null;
|
||||
List<SymbolInfo> sil = _original_generic.find_in_type(name, true);
|
||||
foreach (SymbolInfo si in sil)
|
||||
if (si.sym_info is function_node && !(si.sym_info as function_node).is_extension_method)
|
||||
{
|
||||
si1 = si;
|
||||
break;
|
||||
}
|
||||
AddMember(si1.sym_info, temp_names[base_func_num].sym_info);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue