Re: [Boost-bugs] [Boost C++ Libraries] #10694: Apple Clang + NVCC - identifier "__is_abstract" is undefined

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #10694: Apple Clang + NVCC - identifier "__is_abstract" is undefined
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-10-24 17:42:18


#10694: Apple Clang + NVCC - identifier "__is_abstract" is undefined
-------------------------------+-------------------------
  Reporter: nilsgladitz@… | Owner: johnmaddock
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: type_traits
   Version: Boost 1.56.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------+-------------------------

Comment (by nilsgladitz@…):

 Thank you for looking into this.

 #include <type_traits> and use of std::is_abstract seems to work with
 clang++ when directly invoked.

 When I try to run nvcc on it instead I get:
   fatal error: 'type_traits' file not found.

 Looking at the clang command line that nvcc runs it seems to be due to it
 adding -stdlib=libstdc++.
 Forcing -stdlib=libc++ seems to break the subsequent cudafe (CUDA front
 end) invocation:
 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__config(226):
 error: identifier "__char16_t" is undefined

 It looks like
   /usr/local/include/boost/type_traits/is_abstract.hpp(72): error:
 identifier "is_abstract" is undefined

 is also issued by cudafe while compiling the code that clang preprocessed
 rather than clang itself.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/10694#comment:3>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:17 UTC