Error del compilador CS1032

Actualización: noviembre 2007

Mensaje de error

No se puede definir o anular la definición de símbolos de preprocesador después del primer símbolo del archivo
Cannot define/undefine preprocessor symbols after first token in file

Las directivas de preprocesador#define y #undef deben utilizarse al principio de un programa, antes que cualquier otra palabra clave, como las que se usan en la declaración de espacio de nombres.

El código siguiente genera el error CS1032:

// CS1032.cs
namespace x
{
   public class clx
   {
      #define a   // CS1032, put before namespace
      public static void Main()
      {
      }
   }
}