This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libstdc++/53543] New: [unordered_map] conflict with __is_convertible clang intrinsic


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53543

             Bug #: 53543
           Summary: [unordered_map] conflict with __is_convertible clang
                    intrinsic
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: zeratul976@hotmail.com


The trunk implementation of unordered_map uses the following alias template at
class scope:

template<typename _Pair>
using __is_convertible = std::is_convertible<_Pair, value_type>;

Clang cannot compile this because __is_convertible is a clang intrinsic (much
like how __is_base_of is a gcc intrinsic).

I asked on the clang mailing list what can be done about this, and they
suggested:

"Since GCC 4.8 is not yet released, and Clang versions with the 
__is_convertible intrinsic are, the best solution would be to politely 
ask the libstdc++ maintainers to change this name."

Would it be possible to entertain this request?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]