@@ -29,9 +29,9 @@ public TypeSig Resolve(TypeSig typeSig)
2929 switch ( typeSig . ElementType )
3030 {
3131 case ElementType . Ptr : return new PtrSig ( Resolve ( typeSig . Next ) ) ;
32- case ElementType . ByRef : return new PtrSig ( Resolve ( typeSig . Next ) ) ;
32+ case ElementType . ByRef : return new ByRefSig ( Resolve ( typeSig . Next ) ) ;
3333
34- case ElementType . SZArray : return new PtrSig ( Resolve ( typeSig . Next ) ) ;
34+ case ElementType . SZArray : return new SZArraySig ( Resolve ( typeSig . Next ) ) ;
3535 case ElementType . Array :
3636 {
3737 var ara = ( ArraySig ) typeSig ;
@@ -41,7 +41,7 @@ public TypeSig Resolve(TypeSig typeSig)
4141 case ElementType . Var :
4242 {
4343 GenericVar genericVar = ( GenericVar ) typeSig ;
44- var newSig = Resolve ( typeArgsStack , genericVar . Number , true ) ;
44+ var newSig = Resolve ( typeArgsStack , genericVar . Number ) ;
4545 if ( newSig == null )
4646 {
4747 throw new Exception ( ) ;
@@ -52,7 +52,7 @@ public TypeSig Resolve(TypeSig typeSig)
5252 case ElementType . MVar :
5353 {
5454 GenericMVar genericVar = ( GenericMVar ) typeSig ;
55- var newSig = Resolve ( methodArgsStack , genericVar . Number , true ) ;
55+ var newSig = Resolve ( methodArgsStack , genericVar . Number ) ;
5656 if ( newSig == null )
5757 {
5858 throw new Exception ( ) ;
@@ -101,13 +101,9 @@ public TypeSig Resolve(TypeSig typeSig)
101101 }
102102 }
103103
104- private TypeSig Resolve ( List < TypeSig > args , uint number , bool isTypeVar )
104+ private TypeSig Resolve ( List < TypeSig > args , uint number )
105105 {
106- var typeSig = args [ ( int ) number ] ;
107- var gvar = typeSig as GenericSig ;
108- if ( gvar is null || gvar . IsTypeVar != isTypeVar )
109- return typeSig ;
110- return gvar ;
106+ return args [ ( int ) number ] ;
111107 }
112108 }
113109
0 commit comments