check define TARGET_RT_MAC_CFM check define __FreeBSD__ check define __MACH__ check define _WIN32 if ! cfg:set 'type-safe reference scoping' "$(c++:compile " int value_(0); struct Scope { }; struct ScopeTest : Scope { ~ScopeTest() { value_ *= 2; } }; int main() { { const Scope &scope = ScopeTest(); value_ += 1; } return value_ == 2 ? $yes : $no; } ")"; then fatal 'sorry, deal breaker.' fi cfg:set 'delayed ambiguity detection' "$(success c++:pre-compile " template class IfTrue; template IfTrue f(const Type_ &); template IfTrue f(const Type_ &); ")" cfg:set 'operator template arguments' "$(success c++:pre-compile " template struct I { }; template struct N { static const bool v = false; }; template I::v> g(T) { } void f() { g(0); } ")"