Tengo una biblioteca estática de terceros construida con Enable C++ Exceptions
establecida en No (/EH
marca no especificada). ¿Cuáles son las consecuencias de llamar desde código creado con excepciones de C++ habilitadas (/EHa
)? Si se lanza una Excepción estructurada desde el interior de la biblioteca, ¿se llamará de manera confiable a la función proporcionada a _set_se_translator por la aplicación principal? (Mis experimentos muestran que sí, pero me pregunto si este es un comportamiento definido).¿Cuáles son las consecuencias de mezclar modelos de manejo de excepciones en Visual Studio 2010?
¿Hay alguna otra consideración al mezclar modelos de entrega de excepciones /EH
?
Técnicamente, el estándar diría que causa un comportamiento indefinido para romper ODR. Sin embargo, supongo que quieres una explicación más concreta (y por eso es un comentario). –
@Billy ONeal: golpeas UB tan pronto como desactivas las excepciones; la mezcla no puede empeorar las cosas. UB no viene en grados. – MSalters
@MSalters: Lol - ni siquiera pensé en eso. Es verdad. –