Thanks for checking. FYI, _SECURE_SCL, which is 1 by default, turns on the "secure" version of the C/C++ libraries. This version, among other things, includes extra checks in some functions. MSFT claims these checks should not slow down functions but I wanted to know if somebody had noticed a slowdown in boost libraries compiled with this option.
As far as _HAS_ITERATOR_DEBUGGING, which is also 1 by default, turns on some extra checks inside STL _in debug mode only_. These checks are pretty heavy, to the point of changing the complexity of STL algorithms. For example, std::lower_bound(it_begin, it_end, val, pred) will execute pred(it_current, val) when appropriate. If _HAS_ITERATOR_DEBUGGING is 1, MSFT calls pred _twice_, once like pred(it_current, val) and once like (val, it_current). This, besides slowing down lower_bound, prohibits the use of a predicate that takes different argument types.
At least for one regex test program, it's 2 or 3 times slower with all the checks turned on (or subjectively appears to be anyway). This is a very heavy standard-library-thrashing test case though :-) John.