Я только что обновил boost до версии 1.48.0 в проекте, который я разрабатываю на OSX Lion, который также включает заголовки Cocoa. После этого я получил массу ошибок, указывающих на has_prefix_operator.hpp и has_binary_operator.hpp, которые все указывают на строки типа i.e.:
BOOST_STATIC_CONSTANT(bool, value = (sizeof(check(((make<Lhs>() BOOST_TT_TRAIT_OP make<Rhs>()),make<has_operator>())))==sizeof(::boost::type_traits::yes_type)));
../../boost_1_48_0/импульс/type_traits/детали/has_binary_operator.hpp: 157: 4: ошибка: ожидаемое выражение [1]
Попытавшись, так как я не мог прочитать никакого смысла в этих ошибках, я заметил, что если я включу порядок включения из:
#import <Cocoa/Cocoa.h>
#include <boost/type_traits.hpp>
к
#include <boost/type_traits.hpp>
#import <Cocoa/Cocoa.h>
вещи волшебным образом работают. Я очень смущен этим, так как он отлично справился с предыдущим выпуском ускорения, и я не знаю, почему это происходит. Любые идеи о том, что может происходить?
Спасибо!