This commit is contained in:
parent
91df93410b
commit
22b77e38af
|
|
@ -838,7 +838,7 @@ namespace PascalABCCompiler.NETGenerator {
|
|||
|
||||
public bool IsConstructedGenericType(Type t)
|
||||
{
|
||||
if (t is TypeBuilder || t is GenericTypeParameterBuilder || t is EnumBuilder)
|
||||
if (t is TypeBuilder || t is GenericTypeParameterBuilder || t is EnumBuilder || t.GetType().FullName == "System.Reflection.Emit.TypeBuilderInstantiation")
|
||||
return true;
|
||||
if (t.IsGenericType)
|
||||
foreach (Type gt in t.GetGenericArguments())
|
||||
|
|
|
|||
15
TestSuite/foreach10.pas
Normal file
15
TestSuite/foreach10.pas
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
type
|
||||
// Обязательно пользовательский шаблонный тип
|
||||
t1<T> = class end;
|
||||
|
||||
begin
|
||||
// Обязательно массив
|
||||
// foreach по "a.AsEnumerable" не падает
|
||||
var a: array of t1<byte> := Arr(new t1<byte>);
|
||||
var i := 0;
|
||||
foreach var x in a do
|
||||
begin
|
||||
Inc(i);
|
||||
end;
|
||||
assert(i = 1);
|
||||
end.
|
||||
Loading…
Reference in a new issue