[cfe-dev] [libcxx] Problem with quick_exit test

Howard Hinnant hhinnant at apple.com
Wed May 8 11:00:33 PDT 2013


On May 8, 2013, at 1:33 PM, "C. Bergström" <cbergstrom at pathscale.com> wrote:

> On 05/ 9/13 12:16 AM, Howard Hinnant wrote:
>> On May 8, 2013, at 6:21 AM, İsmail Dönmez<ismail at donmez.ws>  wrote:
>> 
>>> Hi,
>>> 
>>> test/language.support/support.start.term/quick_exit.pass.cpp uses std::at_quick_exit() to test quick exit functionality. But looking at include/cstdlib header inside libcxx at_quick_exit function is not defined in the std namespace.
>>> 
>>> Changing the test to use at_quick_exit(f) without the namespace fixes the build for me.
>>> 
>>> Is this an oversight or am I missing something?
>> It sounds like<__config>  needs to turn on _LIBCPP_HAS_QUICK_EXIT for your platform.  Currently<__config>  says:
>> 
>> #if defined(__FreeBSD__)&&  (__ISO_C_VISIBLE>= 2011 || __cplusplus>= 201103L)
>> #define _LIBCPP_HAS_QUICK_EXIT
>> 
>> Perhaps you could test&  submit a patch to fix this?
> Fencepost comment - Instead of a platform #if - could this be turned into a feature check? (I'm just curious if _LIBCPP_HAS_QUICK_EXIT is really limited to FreeBSD only..

I've implemented auto-detection of the existence of namespace scope functions before, but it was a long time ago, and was pretty messy.  I'm open to suggestions on how to do the feature check.

Howard





More information about the cfe-dev mailing list