CS1908 de erro do compilador

Mensagem de erro

O tipo do argumento para o atributo DefaultValue deve corresponder ao tipo de parâmetro

Este erro é gerado quando você usar o argumento incorreto para o DefaultValueAttribute valor de atributo. Use um valor que corresponde ao tipo de parâmetro.

Exemplo

O exemplo a seguir gera CS1908.

// CS1908.cs
// compile with: /target:library
using System.Runtime.InteropServices;

public interface ISomeInterface
{
   void Bad([Optional] [DefaultParameterValue("true")] bool b);   // CS1908

   void Good([Optional] [DefaultParameterValue(true)] bool b);   // OK
}