コードインスペクション:null 不可の基本型で制約された型パラメーターの「class?」制約に対する冗長な null 許容アノテーション
このインスペクションは、別の基本型制約によって型パラメーターが null 許容でないことがすでに保証されているにもかかわらず、参照型制約に null 許容のアノテーションが付いていることを報告します。 この場合、 class 制約の ? は冗長または矛盾しています。
#nullable enable
using System;
class C
{
void M<T>() where T : class?, IDisposable
{
}
}
#nullable enable
using System;
class C
{
void M<T>() where T : class, IDisposable
{
}
}
別の応急処置としては、意図した汎用契約により合致する場合、制約型を null 許容型としてアノテーション付けすることもできます。
2026 年 6 月 12 日