defer_defarg_parsing

Defers the parsing of default arguments in member functions.

Syntax
  #pragma defer_defarg_parsing on | off   
Remarks

To be accepted as valid, some default expressions with template arguments will require additional parenthesis. For example, the following listing results in an error message.

Listing: Deferring parsing of default arguments
template<typename T,typename U> struct X { T t; U u; }; 
struct Y { 
 // The following line is not accepted, and generates 
 // an error message with defer_defarg_parsing on. 
 void f(X<int,int> = X<int,int>()); 
}; 

The following listing does not generate an error message.

Listing: Correct default argument deferral
template<typename T,typename U> struct X { T t; U u; }; 
struct Y { 
 // The following line is OK if the default 
 // argument is parenthesized. 
 void f(X<int,int> = (X<int,int>()) ); 
}; 

This pragma does not correspond to any panel setting. By default, this pragma is on.