BUG: Fix exception handling flag translation to be specific to each VS version. This allows /EHa to be handled correctly for VS 2003.
This commit is contained in:
parent
5cd4f2a661
commit
bb1fa4c3f0
|
@ -813,6 +813,14 @@ static cmVS7FlagTable cmVS7ExtraFlagTable[] =
|
|||
cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
|
||||
{"PrecompiledHeaderThrough", "Yu", "Precompiled Header Name", "",
|
||||
cmVS7FlagTable::UserValueRequired},
|
||||
|
||||
// Exception handling mode. If no entries match, it will be FALSE.
|
||||
{"ExceptionHandling", "GX", "enable c++ exceptions", "TRUE", 0},
|
||||
{"ExceptionHandling", "EHsc", "enable c++ exceptions", "TRUE", 0},
|
||||
// The EHa option does not have an IDE setting. Let it go to false,
|
||||
// and have EHa passed on the command line by leaving out the table
|
||||
// entry.
|
||||
|
||||
{0,0,0,0,0}
|
||||
};
|
||||
cmVS7FlagTable const* cmGlobalVisualStudio7Generator::GetExtraFlagTableVS7()
|
||||
|
|
|
@ -286,6 +286,12 @@ static cmVS7FlagTable cmVS8ExtraFlagTable[] =
|
|||
{"PrecompiledHeaderThrough", "Yu", "Precompiled Header Name", "",
|
||||
cmVS7FlagTable::UserValueRequired},
|
||||
// There is no YX option in the VS8 IDE.
|
||||
|
||||
// Exception handling mode. If no entries match, it will be FALSE.
|
||||
{"ExceptionHandling", "GX", "enable c++ exceptions", "1", 0},
|
||||
{"ExceptionHandling", "EHsc", "enable c++ exceptions", "1", 0},
|
||||
{"ExceptionHandling", "EHa", "enable SEH exceptions", "2", 0},
|
||||
|
||||
{0,0,0,0,0}
|
||||
};
|
||||
cmVS7FlagTable const* cmGlobalVisualStudio8Generator::GetExtraFlagTableVS8()
|
||||
|
|
|
@ -342,9 +342,6 @@ cmVS7FlagTable cmLocalVisualStudio7GeneratorFlagTable[] =
|
|||
{"EnableFunctionLevelLinking", "Gy",
|
||||
"EnableFunctionLevelLinking", "TRUE", 0},
|
||||
{"EnableIntrinsicFunctions", "Oi", "EnableIntrinsicFunctions", "TRUE", 0},
|
||||
{"ExceptionHandling", "EHsc", "enable c++ exceptions", "TRUE", 0},
|
||||
{"ExceptionHandling", "EHa", "enable c++ exceptions", "2", 0},
|
||||
{"ExceptionHandling", "GX", "enable c++ exceptions", "TRUE", 0},
|
||||
{"GlobalOptimizations", "Og", "Global Optimize", "TRUE", 0},
|
||||
{"ImproveFloatingPointConsistency", "Op",
|
||||
"ImproveFloatingPointConsistency", "TRUE", 0},
|
||||
|
|
Loading…
Reference in New Issue