Hi,<br><br>I decided to see how well clang++ currently does at compiling boost.headers on my linux box.<br>So I took all the files from /usr/include/boost and compiled them.<br>In my test it turns out that clang successfully compiled about 80% of the boost headers.<br>
<br>Headers successfully compiled where:<br><br>#include &lt;boost/integer.hpp&gt;<br>#include &lt;boost/exception.hpp&gt;<br>#include &lt;boost/shared_array.hpp&gt;<br>#include &lt;boost/shared_container_iterator.hpp&gt;<br>
#include &lt;boost/aligned_storage.hpp&gt;<br>#include &lt;boost/shared_ptr.hpp&gt;<br>#include &lt;boost/any.hpp&gt;<br>#include &lt;boost/foreach.hpp&gt;<br>#include &lt;boost/multi_index_container_fwd.hpp&gt;<br>#include &lt;boost/signal.hpp&gt;<br>
#include &lt;boost/multi_index_container.hpp&gt;<br>#include &lt;boost/array.hpp&gt;<br>#include &lt;boost/next_prior.hpp&gt;<br>#include &lt;boost/signals.hpp&gt;<br>#include &lt;boost/noncopyable.hpp&gt;<br>#include &lt;boost/smart_cast.hpp&gt;<br>
#include &lt;boost/nondet_random.hpp&gt;<br>#include &lt;boost/smart_ptr.hpp&gt;<br>#include &lt;boost/assert.hpp&gt;<br>#include &lt;boost/functional.hpp&gt;<br>#include &lt;boost/none.hpp&gt;<br>#include &lt;boost/function_equal.hpp&gt;<br>
#include &lt;boost/none_t.hpp&gt;<br>#include &lt;boost/function.hpp&gt;<br>#include &lt;boost/non_type.hpp&gt;<br>#include &lt;boost/function_output_iterator.hpp&gt;<br>#include &lt;boost/state_saver.hpp&gt;<br>#include &lt;boost/operators.hpp&gt;<br>
#include &lt;boost/static_assert.hpp&gt;<br>#include &lt;boost/static_warning.hpp&gt;<br>#include &lt;boost/bind.hpp&gt;<br>#include &lt;boost/generator_iterator.hpp&gt;<br>#include &lt;boost/optional.hpp&gt;<br>#include &lt;boost/strong_typedef.hpp&gt;<br>
#include &lt;boost/blank_fwd.hpp&gt;<br>#include &lt;boost/get_pointer.hpp&gt;<br>#include &lt;boost/blank.hpp&gt;<br>#include &lt;boost/call_traits.hpp&gt;<br>#include &lt;boost/cast.hpp&gt;<br>#include &lt;boost/implicit_cast.hpp&gt;<br>
#include &lt;boost/pfto.hpp&gt;<br>#include &lt;boost/cerrno.hpp&gt;<br>#include &lt;boost/indirect_reference.hpp&gt;<br>#include &lt;boost/pointee.hpp&gt;<br>#include &lt;boost/throw_exception.hpp&gt;<br>#include &lt;boost/checked_delete.hpp&gt;<br>
#include &lt;boost/pointer_cast.hpp&gt;<br>#include &lt;boost/timer.hpp&gt;<br>#include &lt;boost/integer_fwd.hpp&gt;<br>#include &lt;boost/pointer_to_other.hpp&gt;<br>#include &lt;boost/token_functions.hpp&gt;<br>#include &lt;boost/circular_buffer_fwd.hpp&gt;<br>
#include &lt;boost/integer.hpp&gt;<br>#include &lt;boost/token_iterator.hpp&gt;<br>#include &lt;boost/integer_traits.hpp&gt;<br>#include &lt;boost/tokenizer.hpp&gt;<br>#include &lt;boost/preprocessor.hpp&gt;<br>#include &lt;boost/compressed_pair.hpp&gt;<br>
#include &lt;boost/intrusive_ptr.hpp&gt;<br>#include &lt;boost/program_options.hpp&gt;<br>#include &lt;boost/type.hpp&gt;<br>#include &lt;boost/concept_archetype.hpp&gt;<br>#include &lt;boost/progress.hpp&gt;<br>#include &lt;boost/io_fwd.hpp&gt;<br>
#include &lt;boost/type_traits.hpp&gt;<br>#include &lt;boost/is_placeholder.hpp&gt;<br>#include &lt;boost/config.hpp&gt;<br>#include &lt;boost/crc.hpp&gt;<br>#include &lt;boost/iterator_adaptors.hpp&gt;<br>#include &lt;boost/cregex.hpp&gt;<br>
#include &lt;boost/iterator.hpp&gt;<br>#include &lt;boost/cstdint.hpp&gt;                    <br>#include &lt;boost/cstdlib.hpp&gt;<br>#include &lt;boost/last_value.hpp&gt;<br>#include &lt;boost/random.hpp&gt;<br>#include &lt;boost/utility.hpp&gt;<br>
#include &lt;boost/current_function.hpp&gt;<br>#include &lt;boost/lexical_cast.hpp&gt;<br>#include &lt;boost/limits.hpp&gt;<br>#include &lt;boost/range.hpp&gt;<br>#include &lt;boost/variant.hpp&gt;<br>#include &lt;boost/rational.hpp&gt;<br>
#include &lt;boost/make_shared.hpp&gt;<br>#include &lt;boost/ref.hpp&gt;<br>#include &lt;boost/version.hpp&gt;<br>#include &lt;boost/visit_each.hpp&gt;<br>#include &lt;boost/math_fwd.hpp&gt;<br>#include &lt;boost/mem_fn.hpp&gt;<br>
#include &lt;boost/regex.h&gt;<br>#include &lt;boost/memory_order.hpp&gt;<br>#include &lt;boost/weak_ptr.hpp&gt;<br>#include &lt;boost/enable_shared_from_this.hpp&gt;<br>#include &lt;boost/scoped_array.hpp&gt;<br>#include &lt;boost/scoped_ptr.hpp&gt;<br>
#include &lt;boost/exception.hpp&gt;<br>#include &lt;boost/regex_fwd.hpp&gt;<br><br>The following files failed. Sometimes with assertion failures<br>and somethings with error messages.<br><br>#include &lt;boost/regex.hpp&gt;<br>
#include &lt;boost/assign.hpp&gt;<br>#include &lt;boost/bimap.hpp&gt;<br>#include &lt;boost/thread.hpp&gt;<br>#include &lt;boost/spirit.hpp&gt;<br>#include &lt;boost/property_map.hpp&gt;<br>#include &lt;boost/mpi.hpp&gt;<br>
#include &lt;boost/property_map_iterator.hpp&gt;<br>#include &lt;boost/unordered_map.hpp&gt;<br>#include &lt;boost/parameter.hpp&gt;<br>#include &lt;boost/concept_check.hpp&gt;<br>#include &lt;boost/format.hpp&gt;<br>#include &lt;boost/filesystem.hpp&gt;<br>
#include &lt;boost/dynamic_bitset.hpp&gt;<br>#include &lt;boost/unordered_set.hpp&gt;<br>#include &lt;boost/circular_buffer.hpp&gt;<br>#include &lt;boost/date_time.hpp&gt;<br>#include &lt;boost/dynamic_property_map.hpp&gt;<br>
#include &lt;boost/dynamic_bitset_fwd.hpp&gt;<br>#include &lt;boost/multi_array.hpp&gt;<br>#include &lt;boost/vector_property_map.hpp&gt;<br>#include &lt;boost/asio.hpp&gt;<br>#include &lt;boost/python.hpp&gt;<br><br>I&#39;ll see if I can file bugs where pertinent.<br>
<br>Go Clang!<br>Maurice<br><br>