¿Puede GCC producir estructuras / nombres de clase que no coinciden como VS?

Me gustaría que GCC produzca una advertencia que VisualStudio produce cuando encuentra un nombre que ha sido declarado con ambosclass ystruct. (Advertencia 4099) Esto suele ser el resultado de declaraciones directas como:

struct Base;
...
class Base { ... };

VS en realidad no se puede vincular en este caso, así que he promovido la advertencia a un error. Dado que este proyecto es multiplataforma, también me gustaría descubrir este problema al compilar con GCC; de lo contrario, puedo registrar accidentalmente un código que no funcionará en VS.

Existe algún cambio o método para hacer que GCC también rechace o advierta sobre tales desajustes de declaración de clase / estructura?

NOTA De los comentarios no está claro si esta advertencia es legítima. Para mi pregunta no es relevante ya que la condición hace que la vinculación en VisualStudio falle (no puedo ignorar la advertencia). Por lo tanto, me gustaría identificar los problemas con GCC para que mis compilaciones de Windows no dejen de funcionar de repente.

RESPONDER Parece que no hay solución.

Respuestas a la pregunta(2)

Su respuesta a la pregunta