Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Seunghwa_Kang
Beginner
96 Views

including <tbb/compat/condition_varialbe> using gcc 4.7.2 with -std=c++0x

Hello,

I think the conditional compilation code in tbb_config.h to set TBB_IMPLEMENT_CPP0X needs to be reviewed.

I tried to compile using gcc 4.7.2 with the -std=c++0x flag and got the following error.

error: ‘condition_variable’ in namespace ‘std’ does not name a type

Setting TBB_IMPLEMENT_CPP0X to 1 fixed the problem.

Thanks,

0 Kudos
4 Replies
Anton_P_Intel
Employee
96 Views

 

 

 

96 Views

hello, you need to include compiler's <condition_variable>.

--Vladimir

dulantha_f
Beginner
96 Views

So in other words if the C++11 standard is defined all TBB code gets disabled and it's the programmer's responsibility to include the header files?

One could argue that logic should go into TBB so the programmer always uses the TBB header file and TBB decides when to use what.

Pardon my late question, I just ran into the same problem this week.

96 Views

hello, you can to define TBB_IMPLEMENT_CPP0X explicitly to force tbb to use C++0x compatibility classes in C++11 mode of compiler otherwise it is disabled to avoid compatibility problems.

you can submit a patch with your vision of compatibility classes behavior via our contribution form https://www.threadingbuildingblocks.org/submit-contribution, then we can review it.

--Vladimir

Reply