Tengo el siguiente código:#warning y evaluación macro
#define LIMIT_DATE \"01-03-2010\"
#ifdef LIMIT_DATE
#if _MSC_VER
#pragma message ("Warning : this release will expire on " LIMIT_DATE)
#elif __GNUC__
#warning ("Warning : this release will expire on " LIMIT_DATE)
#endif
#endif
El problema es que LIMIT_DATE no se evalúa cuando se imprime el aviso.
He buscado en Google, pero no he encontrado la solución.
Gracias por la ayuda.
en GNU? Lo hace en MSVC. Las macros no expanden sus argumentos de macro, y no veo una manera de hacer que esto funcione de la manera que desee. – GManNickG
Por lo que vale, simplemente puede hacer '#define LIMIT_DATE" 01-03-2010 "'. Creo que es ilegal escapar fuera de una cadena. – GManNickG