a575963da9
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
50 lines
703 B
C#
50 lines
703 B
C#
// Compiler options: -t:library
|
|
|
|
public interface I<T>
|
|
{
|
|
T Value { get; }
|
|
}
|
|
|
|
public class AI: I<object>
|
|
{
|
|
public object Value { get; set; }
|
|
}
|
|
|
|
public class External
|
|
{
|
|
public dynamic DynamicProperty { get; set; }
|
|
public dynamic Field;
|
|
public dynamic[,] FieldArray;
|
|
|
|
public dynamic Method (dynamic d)
|
|
{
|
|
return d;
|
|
}
|
|
|
|
public void MethodOut (out dynamic d)
|
|
{
|
|
d = decimal.MaxValue;
|
|
}
|
|
|
|
public I<dynamic>[] Method2 (dynamic d)
|
|
{
|
|
return new [] { new AI () { Value = d }};
|
|
}
|
|
|
|
// Same as Method2 to check we are interning dynamic
|
|
public I<dynamic>[] Method3 (dynamic d)
|
|
{
|
|
return d;
|
|
}
|
|
}
|
|
|
|
public class CI<T> : I<T>
|
|
{
|
|
public T Value { get; set; }
|
|
}
|
|
|
|
public class CI2 : CI<dynamic>
|
|
{
|
|
}
|
|
|