Boost logo

Boost :

From: Beman Dawes (bdawes_at_[hidden])
Date: 2003-01-09 09:08:36


I written a C++ program to inspect the Boost directory tree looking for
various problems. The program is in CVS - see boost-root/tools/inspect. It
replaces a hodge-podge of scripts written in three or four other languages,
and should be much easier to maintain. It can be used by developers to see
if potential additions have problems.

See output below. Here are the counts:

4926 files scanned
390 directories scanned
305 problems reported

problem counts:
   60 files with tabs
   15 file names too long
   2 bookmarks with invalid characters
   85 invalid urls
   121 broken links
   22 unlinked files

I'd appreciate it if developers could fix any problems identified in their
libraries.

Cheers,

--Beman

any
    libs/any/test.hpp: tabs in file

build
    tools/build/boost_build_v2.html: broken link: features_properties,
broken link: link_compatibility, unlinked file
    tools/build/examples-v2/make/Jamfile: tabs in file
    tools/build/test/project-test1/dir2/Jamfile: tabs in file
    tools/build/test/test_system.html: unlinked file

concept_check
    libs/concept_check/stl_concept_covering.cpp: tabs in file

config
    libs/config/config.htm: broken link: user.hpp
    libs/config/test/boost_no_ded_typename.cxx: tabs in file

conversion
    libs/conversion/test.hpp: tabs in file

date_time
    boost/date_time/c_local_time_adjustor.hpp: tabs in file
    boost/date_time/wrapping_int.hpp: tabs in file
    libs/date_time/build/Jamfile: tabs in file
    libs/date_time/doc/class_greg_base_facet.html: unlinked file
    libs/date_time/example/gregorian/localization.cpp: tabs in file
    libs/date_time/test/gregorian/testdate_iterator.cpp: tabs in file

detail
    boost/detail/dynamic_bitset.hpp: tabs in file

dynamic_bitset
    boost/dynamic_bitset.hpp: tabs in file
    libs/dynamic_bitset/bitset_test.hpp: tabs in file
    libs/dynamic_bitset/dyn_bitset_unit_tests1.cpp: tabs in file

graph
    boost/graph/dijkstra_shortest_paths.hpp: tabs in file
    boost/graph/graph_as_tree.hpp: tabs in file
    boost/graph/johnson_all_pairs_shortest.hpp: tabs in file
    boost/graph/relax.hpp: tabs in file
    boost/graph/transitive_closure.hpp: tabs in file
    boost/graph/undirected_dfs.hpp: tabs in file
    libs/graph/build/Jamfile: tabs in file
    libs/graph/doc/Buffer.html: broken link:
../../boost/pending/mutable_queue.hpp
    libs/graph/example/filtered_graph_edge_range.cpp: tabs in file
    libs/graph/example/graph_as_tree.cpp: tabs in file
    libs/graph/example/iohb.c: tabs in file
    libs/graph/example/undirected_dfs.cpp: tabs in file
    libs/graph/src/graphviz_parser.h: tabs in file
    libs/graph/test/adj_list_test.cpp: tabs in file
    libs/graph/test/bellman-test.cpp: tabs in file
    libs/graph/test/johnson-test.cpp: tabs in file

lambda
    boost/lambda/detail/member_ptr.hpp: tabs in file
    libs/lambda/doc/lambda_docs_as_one_file.html: unlinked file

libs
    libs: unlinked file

math
    libs/math/Jamfile: tabs in file

more
    more: unlinked file
    more/download.html: broken link: ../boost_all.tar.gz, broken link:
../boost_all.zip
    more/writingdoc/design.html: broken link: template%5Coverview.html
    more/writingdoc/introduction.html: broken link: index.htm
    more/writingdoc/structure.html: broken link: index.htm

mpl
    boost/mpl/if.hpp: tabs in file
    boost/mpl/remove_if.hpp: tabs in file
    libs/mpl/doc/ref/Reference/advance.html: broken link:
../Reference.html, invalid URL: ../../../../../\boost/mpl/advance.hpp

(many similar removed for brevity)

multi_array
    libs/multi_array/doc/reference.html: broken link:
./iterator_categories.html#concept_RandomAccessTraversalIterator, broken
link: ./iterator_categories.html#concept_ReadableIterator, broken link:
./iterator_categories.html#concept_WritableIterator
    libs/multi_array/doc/user.html: broken link:
../../array_traits/index.html

numeric
    boost/numeric/ublas/matrix_sparse.hpp: tabs in file
    boost/numeric/ublas/vector_sparse.hpp: tabs in file
    libs/numeric/ublas/Jamfile: tabs in file

pool
    boost/pool/detail/mutex.hpp: tabs in file

preprocessor
    libs/preprocessor/doc/blank.html: unlinked file
    libs/preprocessor/doc/headers.html: broken link:
headers/wstringize.hpp.html
    libs/preprocessor/doc/headers/enum_params_with_a_default.hpp.html:
filename > 31 chars
    libs/preprocessor/doc/headers/enum_params_with_defaults.hpp.html:
filename > 31 chars
    libs/preprocessor/doc/headers/list/to_tuple.hpp.html: broken link:
../../ref/to_tuple.html, broken link: ../../ref/to_tuple_r.html
    libs/preprocessor/doc/headers/repetition/enum_params_with_a_default.hpp.html:
filename > 31 chars
    libs/preprocessor/doc/headers/repetition/enum_params_with_defaults.hpp.html:
filename > 31 chars
    libs/preprocessor/doc/headers/repetition/enum_trailing_binary_params.hpp.html:
filename > 31 chars
    libs/preprocessor/doc/ref.html: broken link: ref/wstringize.html
    libs/preprocessor/doc/ref/bool.html: broken link: bool.hpp
    libs/preprocessor/doc/ref/enum_trailing_binary_params.html: filename >
31 chars
    libs/preprocessor/doc/ref/enum_trailing_binary_params_z.html:
filename > 31 chars
    libs/preprocessor/doc/ref/expr_iif.html: broken link:
../headers/comparison/and.hpp.html, broken link:
../headers/control/expr_iif.hpp
    libs/preprocessor/doc/ref/iteration.html: broken link:
../headers/iteration/iterate.hpp,html, broken link:
iterations_params_x.html
    libs/preprocessor/doc/ref/list_cat_d.html: broken link: ni.html
    libs/preprocessor/doc/ref/list_filter.html: broken link: ni.html
    libs/preprocessor/doc/ref/list_fold_right.html: broken link:
../headers/list/fold_right.html
    libs/preprocessor/doc/ref/list_for_each_i_r.html: broken link:
../headers/list/list_for_each_i.html
    libs/preprocessor/doc/ref/min_d.html: broken link:
../list/fold_left.hpp.html, broken link: ../selection/min.hpp.html
    libs/preprocessor/doc/resources.html: unlinked file
    libs/preprocessor/doc/top.html: unlinked file
    libs/preprocessor/doc/topics/file_iteration.html: broken link:
choosing_repetition.html
    libs/preprocessor/doc/topics/local_iteration.html: broken link:
choosing_repetition.html
    libs/preprocessor/index.html: broken link: doc/index.htm
    libs/preprocessor/test/iteration.h: tabs in file
    libs/preprocessor/test/repetition.cpp: tabs in file
    libs/preprocessor/test/test.h: tabs in file

property_map
    libs/property_map/const_associative_property_map.html: filename > 31
chars
    libs/property_map/example1.cpp: tabs in file
    libs/property_map/example2.cpp: tabs in file

python
    boost/python/detail/python22_fixed.h: tabs in file
    libs/python/doc/index.html: broken link: ../../people/dave_abrahams.htm
    libs/python/doc/new-conversions.html: unlinked file
    libs/python/doc/tutorial/doc/building_an_extension_module.html: broken
link: ../../../boost/python/detail/wrap_python.hpp, broken link:
../../../tools/build/index.html, broken link: ../example/Jamfile, broken
link: ../example/project.zip, filename > 31 chars, invalid URL:
file:///C:/dev/boost/tools/build/index.html, unlinked file
    libs/python/doc/tutorial/doc/class_operators_special_functions.html:
filename > 31 chars
    libs/python/doc/v2/Apr2002.html: broken link:
../../../preprocessor/doc/index.htm
    libs/python/doc/v2/May2002.html: broken link: ../special.html#numeric,
broken link: Mar2002#data_members, broken link: updated
    libs/python/doc/v2/bibliography.html: unlinked file
    libs/python/doc/v2/faq.html: broken link: ../../../tools/build
    libs/python/doc/v2/from_python.html: broken link: NonCopyable.html,
invalid bookmark: ../../../utility/utility.htm#Class noncopyable, unlinked
file
    libs/python/doc/v2/header.html: unlinked file
    libs/python/doc/v2/instance_holder.html: invalid bookmark:
../../../utility/utility.htm#Class noncopyable
    libs/python/doc/v2/make_function.html: broken link:
../../../mpl/doc/Sequences.html
    libs/python/doc/v2/overview.html: unlinked file
    libs/python/doc/v2/rationale.html: broken link:
../../../../../people/dave_abrahams.htm, unlinked file
    libs/python/doc/v2/return_value_policy.html: broken link:
ResultConverterGenerator.html
    libs/python/test/defaults.cpp: tabs in file
    libs/python/test/submod_subclass_api.cpp: tabs in file

random
    libs/random/wg21-proposal.html: unlinked file

rational
    libs/rational/rational_example.cpp: tabs in file

rational.hpp.htm
    boost/rational.hpp.htm: unlinked file

regex
    libs/regex/example/Jamfile: tabs in file
    libs/regex/test/Jamfile: tabs in file

regression
    tools/regression/build/Jamfile: tabs in file

signals
    boost/signals/trackable.hpp: tabs in file
    libs/signals/doc/design.html: broken link:
../../../boost/signals/signal_base.hpp, broken link:
../../libs/smart_ptr/index.htm

smart_ptr
    libs/smart_ptr/enable_shared_from_this_test.cpp: filename > 31 chars

static_assert
    libs/static_assert/Jamfile: tabs in file

test
    libs/test/doc/components_testing.htm: unlinked file

thread
    libs/thread/src/threadmon.cpp: tabs in file
    libs/thread/tutorial/counter.cpp: tabs in file
    libs/thread/tutorial/factorial3.cpp: tabs in file

tokenizer
    boost/token_functions.hpp: tabs in file
    libs/tokenizer/examples.cpp: tabs in file

type_traits
    libs/type_traits/test/Jamfile: tabs in file
    libs/type_traits/test/has_nothrow_constructor_test.cpp: filename > 31
chars
    libs/type_traits/test/has_trivial_constructor_test.cpp: filename > 31
chars
    libs/type_traits/test/is_member_function_pointer_test.cpp: filename >
31 chars
    libs/type_traits/test/tricky_partial_specialization_test.cpp:
filename > 31 chars

utility
    boost/shared_container_iterator.hpp: tabs in file
    libs/utility/shared_iterator_example2.cpp: tabs in file


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk