9 INST_TYPE="DefaultArgument";
10 if [ "$TEST_INST_TYPE" != "" ]; then
11 INST_TYPE="$TEST_INST_TYPE";
16 TEST_NAME=${TEST_VALIDITY}_${TEST_NAME}
17 TEST_FILE=${TEST_NAME}_generated.il
19 sed -e "s/INIT/${TEST_INIT}/g" -e "s/VALIDITY/${TEST_VALIDITY}/g" -e "s/TARGET_CONSTRAINT/${TEST_DEST}/g" -e "s/SOURCE_CONSTRAINT/${TEST_SRC}/g" > $TEST_FILE <<//EOF
21 // VALIDITY CIL which breaks the ECMA-335 rules.
22 // this CIL should fail verification by a conforming CLI verifier.
24 .assembly '${TEST_NAME}_generated'
26 .hash algorithm 0x00008004
30 .assembly extern mscorlib
33 .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
36 .module bne_with_generic_type_type.exe
38 .class interface public auto ansi abstract IfaceA
42 .class interface public auto ansi abstract IfaceB
46 .class public auto ansi Class extends [mscorlib]System.Object
48 .method public hidebysig specialname rtspecialname instance default void '.ctor' () cil managed
52 call instance void object::'.ctor'()
57 .class public auto ansi DefaultArgument extends Class implements IfaceA, IfaceB
59 .method public hidebysig specialname rtspecialname instance default void '.ctor' () cil managed
63 call instance void Class::'.ctor'()
70 .class public auto ansi beforefieldinit Test
71 extends [mscorlib]System.Object
74 .method public hidebysig specialname rtspecialname instance default void '.ctor' () cil managed
78 call instance void object::'.ctor'()
82 .method public static void Method< SOURCE_CONSTRAINT T> ()
89 .class public auto ansi beforefieldinit Test2< TARGET_CONSTRAINT T>
90 extends [mscorlib]System.Object
92 .method public static void Method ()
95 call void class Test::Method<!T>()
100 .method public static int32 Main ()
105 call void class Test2< $INST_TYPE >::Method()