Qué compiladores modernos admiten la expresión Gnu Statement (lenguajes C y C++). ¿Qué versiones debo tener para usar una declaración de expresiones?
La expresión de declaración es algo así como ({ code; code; retval })
:
int b=56;
int c=({int a; a=sin(b); a;});
Ya conozco algunos compiladores de este tipo:
- CCG >=3
- Sonido metálico/LLVM >= 3.0.0
- Compilador Intel C++ >= 6.0 (versión de Linux, consulte la página 4; poco limitado)
- Sol Estudio >= 12 (Nuevas extensiones de idioma)
- IBM XL para z/OS (marcado como extensión de IBM)
- Open64 (ya que usa águila pescadora-gcc Interfaz)
Este compilador parece no admitir esto (no estoy seguro):
- MS Visual C++
PD. se enumeran algunos compiladores de C/C++ aquí pero solo me interesan los compiladores maduros, que se usan ampliamente (por ejemplo, no un tcc o turbo c)