I've created a small exception class. I want to make a constructor that does not throw, but for some reason, the compiler is telling me that the constructor may throw, despite the "catch all" handler :
invalid_csv::invalid_csv( size_t r, size_t c, const char * msg ) throw()
try :
std::runtime_error( msg ),
row( r ),
col( c ),
m_init_ok( true )
{
}
catch( ... )
{
m_init_ok = false;
}
.
warning C4297: 'csvrw::invalid_csv::invalid_csv': function assumed not to throw an exception but does
Why does it ? Thank you.
Source
Read this answer