Obligar a gcc a compilar el archivo .cpp como C
Tengo un archivo .cpp provisto externamente. Es una mezcla de código compatible con C y un poco de C ++ también. El código C ++ es solo una envoltura alrededor de C para aprovechar las características de C ++.
Usa#ifdef __cplusplus
macros para proteger el código C ++, lo cual es genial. Desafortunadamente, si trato de compilar usando gcc, lo trata como C ++ debido al final del archivo. Soy consciente de las diferencias entre gcc y g ++: no quiero compilar como C ++.
¿Hay alguna forma de forzar a gcc a tratar este archivo como un archivo C? He intentado usar p.--std=c99
, pero esto produce correctamente el error de que C99 no es válido para C ++.
Cambiar el nombre del archivo a .c funciona, pero me gustaría evitarlo si es posible porque se proporciona externamente y sería bueno que permaneciera como una copia inmaculada.
¡Gracias!