used dtor_optimized in destroy for branch free destroy

[SVN r77238]
This commit is contained in:
Christopher Hite
2012-03-05 19:43:14 +00:00
parent 592795e00b
commit a397c16d4c
2 changed files with 14 additions and 8 deletions
+3 -1
View File
@@ -453,7 +453,9 @@ class optional_base : public optional_tag
void destroy()
{
if ( m_initialized ){
if( dtor_optimized::value )
m_initialized = false ;
else if ( m_initialized ){
destroy_impl(is_reference_predicate()) ;
m_initialized = false ;
}