In file included from angelwrap/qas_angelwrap.cpp:25: In file included from angelwrap/addon/addon_dictionary.h:20: In file included from /usr/include/c++/v1/map:442: /usr/include/c++/v1/__tree:1111:55: error: too few arguments provided to function-like macro invocation numeric_limits<difference_type >::max());} ^ angelwrap/../gameshared/q_math.h:127:9: note: macro 'max' defined here #define max( a, b ) ( ( a ) > ( b ) ? ( a ) : ( b ) ) ^ In file included from angelwrap/qas_angelwrap.cpp:32: In file included from /usr/include/c++/v1/list:180: /usr/include/c++/v1/__undef_min_max:17:2: warning: : macro min is incompatible with C++. #undefing min [-W#warnings] #warning: macro min is incompatible with C++. #undefing min ^ /usr/include/c++/v1/__undef_min_max:29:2: warning: : macro max is incompatible with C++. #undefing max [-W#warnings] #warning: macro max is incompatible with C++. #undefing max ^ 2 warnings and 1 error generated. http://package18.nyi.freebsd.org/data/headi386PR216008-default/2017-02-02_16h22m03s/logs/errors/warsow-1.51_2.log http://package18.nyi.freebsd.org/data/headamd64PR216008-default/2017-01-29_16h09m05s/logs/errors/warsow-1.51_2.log regressed by: https://github.com/llvm-mirror/libcxx/commit/ef3060ef96f9 (r287729)
While adding "#undef max" into angelwrap/addon/addon_dictionary.h helps, I think, libc++ should include <__undef_min_max> within <map> or <__tree> instead.
I would pester the angelwrap maintainer, since #defining those symbols is evil. None the less I'll merge the suggested libc++ changes into the 4.0 branch today.
The fix was merged into the 4.0 branch in r294103.
I imported Eric's fix in r313300 (in the project/clang400-import branch).
I confirm, the port builds fine now: http://sprunge.us/Edgh