@@ -347,15 +347,15 @@ string ToConstructorString(ConstructorInfo constructorInfo, ApiEntryStringFlags
347347 {
348348 foreach ( var item in DeclarersOf ( constructorInfo . DeclaringType , true ) . Reverse ( ) )
349349 {
350- buffer . Append ( Api . GetEntry ( item ) . ToString ( ForSubCalls ( flags ) ) ) ;
350+ buffer . Append ( Api . GetEntry ( item , true ) . ToString ( ForSubCalls ( flags ) ) ) ;
351351 buffer . Append ( "." ) ;
352352 }
353353 }
354354
355355 if ( flags . HasFlag ( ApiEntryStringFlags . CliNames ) )
356356 buffer . Append ( constructorInfo . Name ) ;
357357 else
358- buffer . Append ( Api . GetEntry ( constructorInfo . DeclaringType ) . ToString ( ApiEntryStringFlags . None ) ) ;
358+ buffer . Append ( Api . GetEntry ( constructorInfo . DeclaringType , true ) . ToString ( ApiEntryStringFlags . None ) ) ;
359359
360360 if ( flags . HasFlag ( ApiEntryStringFlags . ParameterTypes ) || flags . HasFlag ( ApiEntryStringFlags . ParameterNames ) )
361361 {
@@ -381,6 +381,8 @@ string ToMethodString(MethodInfo methodInfo, ApiEntryStringFlags flags)
381381 {
382382 if ( methodInfo . ReturnType == typeof ( void ) )
383383 segments . Add ( "void" ) ;
384+ else if ( methodInfo . ReturnType . IsGenericParameter )
385+ segments . Add ( methodInfo . ReturnType . Name ) ;
384386 else
385387 segments . Add ( Api . GetEntry ( methodInfo . ReturnType , true ) . ToString ( ForSubCalls ( flags ) ) ) ;
386388 }
@@ -390,7 +392,7 @@ string ToMethodString(MethodInfo methodInfo, ApiEntryStringFlags flags)
390392 {
391393 foreach ( var item in DeclarersOf ( methodInfo . DeclaringType , true ) . Reverse ( ) )
392394 {
393- buffer . Append ( Api . GetEntry ( item ) . ToString ( ForSubCalls ( flags ) ) ) ;
395+ buffer . Append ( Api . GetEntry ( item , true ) . ToString ( ForSubCalls ( flags ) ) ) ;
394396 buffer . Append ( "." ) ;
395397 }
396398 }
@@ -408,7 +410,7 @@ string ToMethodString(MethodInfo methodInfo, ApiEntryStringFlags flags)
408410 {
409411 var genericArguments = methodInfo . GetGenericArguments ( ) ;
410412 buffer . Append ( "<" ) ;
411- buffer . Append ( string . Join ( ", " , genericArguments . Select ( arg => Api . GetEntry ( arg ) . ToString ( ForSubCalls ( flags ) ) ) ) ) ;
413+ buffer . Append ( string . Join ( ", " , genericArguments . Select ( arg => arg . IsGenericParameter ? arg . Name : Api . GetEntry ( arg ) ? . ToString ( ForSubCalls ( flags ) ) ?? arg . Name ) ) ) ;
412414 buffer . Append ( ">" ) ;
413415 }
414416 }
@@ -448,7 +450,7 @@ string ToPropertyString(PropertyInfo propertyInfo, ApiEntryStringFlags flags)
448450 {
449451 foreach ( var item in DeclarersOf ( propertyInfo . DeclaringType , true ) . Reverse ( ) )
450452 {
451- buffer . Append ( Api . GetEntry ( item ) . ToString ( ForSubCalls ( flags ) ) ) ;
453+ buffer . Append ( Api . GetEntry ( item , true ) . ToString ( ForSubCalls ( flags ) ) ) ;
452454 buffer . Append ( "." ) ;
453455 }
454456 }
0 commit comments