[tlbuild] Asymptote compile errors on latest OS X (with libc++)
Mojca Miklavec
mojca.miklavec.lists at gmail.com
Tue May 13 00:49:26 CEST 2014
On Tue, May 13, 2014 at 12:28 AM, John Bowman wrote:
> The ext/hash_map problem was already fixed in version 2.26. We don't use
> GNUC_PREREQ(4,3)
> anymore:
>
> #if defined __GNUC__ && defined __GNUC_MINOR__
> # define PREREQ(maj,min) \
> ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
> #else
> # define PREREQ(maj,min) 1
> #endif
>
> #ifndef NOHASH
> #if PREREQ(4,3) || defined(__CYGWIN__)
>
> #if __cplusplus >= 201103L
> #include <memory>
> #include <unordered_map>
> #define EXT std
> #else
> #include <tr1/unordered_map>
> #define EXT std::tr1
> #endif
Even so clang identifies itself as
#define __GNUC_MINOR__ 2
#define __GNUC_PATCHLEVEL__ 1
#define __GNUC__ 4
and fails to satisfy the initial "#if PREREQ(4,3)", so it ends up with
the following code:
#else
#define EXT __gnu_cxx
#include <ext/hash_map>
#define unordered_map hash_map
#define unordered_multimap hash_multimap
#endif
despite having full C++11 support.
Mojca
More information about the tlbuild
mailing list