更新しました。何となく1.41リリースが近い様な気がします。 ttp://booster.x0.to/ 以下更新内容の一部 [Spirit] Spirit: fixing re-initialization problem for optional attributes Spirit: improved fix for re-initialization of optionals, added tests Spirit: added missing specialization to transform_attribute. Fixed qi::subrule to use this Spirit: updating examples and tests Spirit: removing remnants of safe_bool [Fusion] Spirit: improved fix for re-initialization of optionals, added tests [Graph] Fixed bugs in F-R layout Fixed numlocalverts bug Changed boost::get() call to get() to reflect new distributed property map namespace (boost::parallel) [Serialization] Address complaints for Inspect fix memory leaks Fix problem with multiple declaration of void_cast_register [Exeption] Added errinfo_nested_exception typedef. Fixed minor documentation error. [Signals2] Work around missing include in Boost.Variant headers Include <functional>, for std::greater. [Interprocess] Fixes for 1.41 [Unordered] Correct macro checks for initializer lists. [Graph_parallel] Added edges_are_sorted tag to distributed CSR graph ctor since passing a sorted iterator range to the unsorted ctor seems to produce a different graph than passing a sorted iterator range to the sorted ctor.
更新しました。 ttp://booster.x0.to/ 以下更新内容の一部 [Spirit] Spirit: fixing endianess/truncation problem in Karma|s output iterator Spirit: fixing tests for big endian binary generator Spirit: removed undefined behavior in grammar initialization [Interprocess] Fixes for 1.41 [Intrusive] Fixes for 1.41 [Graph] Removed assertions that may depend on FP precision. [Serialization] add non-polymorphic pointer test [Pool] Allow zero-sized blocks to be allocated by malloc_n. Fixes #386 [Unordered] Use normal emplace implementation for emplace_hint and insert with hint. Fix allocator for construct from initializer list. [Random] Disable some warnings for msvc. Fixes #3532 [Math] Improve ibeta error handling, and add new tests. [Detail] fix for fix in r35591: sometimes __hppa is on PA-RISC but __hpux isn't Fixes ticket #3537 [Signals2] Qualify addressof call, refs #3534. [Python] Fix for #3490, parameter depends on python. [Thread] Added futures to boost.thread
Check failed in file /usr/include/boost/numeric/ublas/vector_expression.hpp at line 548: size1 == size2 terminate called after throwing an instance of 'boost::numeric::ublas::bad_argument' what(): bad argument Aborted
更新しました。今週はsmart_ptr, thread, regex, xpressiveといった割と使われていそうなライブラリに fixや仕様変更が入っています。 ttp://booster.x0.to/ 以下更新内容の一部 [Spirit] Spirit: more work on attribute traits, allowing optional for alternatives, maxwidth supports extracting overhang [Fusion] fix for #2355: discrepancy between std::accumulate and fusion::accumulate [Regex] Tighten up error handling and checking. [Unordered] Remove 'grouped' from hash_table as it isn't used and is a bit confusing. [Circular_buffer] circular_buffer: added erase_begin and erase_end methods
Fix for bug #2067 --- use shared_mutex for thread_group rather than a simple mutex Fix for move assignment of unique_lock if rvalue refs supported More fixes for compilers with rvalue ref support [Xpressive] nested results uses a custom list type that allows incomplete types, does no dynamic allocation in the default constructor, and has a guarnteed O(1) splice; fixes #3278 [Smart_ptr] Renamed enable_shared_from_this2 to enable_shared_from_raw and added shared_from_raw free function. These changes fix the pointer value in shared_ptr which were obtained before an external shared_ptr has taken ownership of the object (for example when a shared_ptr to this is obtained in an object's constructor). [Numeric] see #3501: Reusing concepts from different compile units yields multiple defined symbols (Incomplete) * removed inlines that were added with the last commit * added anonymous namespace to make functions local to compilation unit
[Thread] Fix for bug #2067 --- use shared_mutex for thread_group rather than a simple mutex Fix for move assignment of unique_lock if rvalue refs supported More fixes for compilers with rvalue ref support [Xpressive] nested results uses a custom list type that allows incomplete types, does no dynamic allocation in the default constructor, and has a guarnteed O(1) splice; fixes #3278 [Smart_ptr] Renamed enable_shared_from_this2 to enable_shared_from_raw and added shared_from_raw free function. These changes fix the pointer value in shared_ptr which were obtained before an external shared_ptr has taken ownership of the object (for example when a shared_ptr to this is obtained in an object's constructor). [Numeric] see #3501: Reusing concepts from different compile units yields multiple defined symbols (Incomplete) * removed inlines that were added with the last commit * added anonymous namespace to make functions local to compilation unit
ttp://booster.x0.to/ 以下更新内容の一部 [Spirit] Spirit: fixing lex::tokenize_and_parse functions Fix. Disallow alpha or underscore after "int" Spirit: fixing usage of plain functions as lexer semantic actions Spirit: replaced long long by boost::long_long_type [Ptr_container] https://svn.boost.org/trac/boost/ticket/3579 [Fusion] Fusion: adding a missing 'const' associative_sequence_tag -> associative_tag [Regex] Added support for function objects as well as strings when formatting. [Program_options] Fix 'ambiguous else clause' compiler warning. Fixes #3556. Put description to next line if we'd overflow otherwise. Fixes #689. Use extra parens to silence warnings re &&/|| on same level. [Xpressive] fix infinite loop with some uses of \Q...\E quotemeta, fixes #3586 [Math] remove surplus const-qualifiers. [Wave] Wave: added missing header file and special handling for stlport [Smart_ptr] Added weak_from_raw(), for use in conjunction with enable_shared_from_raw base class.
>>324 あんまり、そこに拘る必要はないです。 lambdaか否かを判断するmeta function が作れればおk。
326 名前:デフォルトの名無しさん [2009/11/10(火) 10:40:42 ]
>>324 F(????)としてるのは、F(int)とすれば template<class F, class A0> struct is_lambda_impl<boost::lambda::lambda_functor<F>(A0)> が選択されるからです。
int 部分にはboost::lambda::_1の型か何か別のものが入ると思う。 _1 や _2 の数によって F(A0) F(A0, A1) の様な形になると思う。
327 名前:デフォルトの名無しさん [2009/11/10(火) 11:00:54 ]
こゆこと? (動作確認してないけど)
template<template <class f> class T, class F> bool is_lambda_(T<F>) { return is_lambda_impl<T<F> >::value; }
template<template <class f, class a0> class T, class F, class A0> bool is_lambda_(T<F, A0>) { return is_lambda_impl<T<F, A0> >::value; }
template<template <class f, class a0, class a1> class T, class F, class A0, class A1> bool is_lambda_(T<F, A0, A1>) { return is_lambda_impl<T<F, A0, A1> >::value; }
更新しました。今週はコンパイル時の警告の抑制が中心の様です。 ttp://booster.x0.to/ 以下更新内容の一部 [Spirit] Spirit: fixing bug in alternatives taking optionals Spirit: started to integrate re2c style code generator for lexer [Regex] Improved error messages generated for thrown exceptions. [Program_options] Fix wordwrapping in presense of default parameters. Don't strip quotes from values. [Smart_ptr] Fixed access to enable_shared_from_raw::weak_this_ when BOOST_NO_MEMBER_TEMPLATE_FRIENDS is defined. [Unordered] Change unordered move tests to be more lenient on compilers without NRVO. [System] System: Correct too_many_symbolic_link_levels misspelling. Fix #3559.
[Graph] Changed to boost::unordered_* containers instead of compiler-specific ones; made hashed containers enabled always [Integer] Reverted Integer back to Release branch state - as per devel-list discussions. [Xpressive] do NOT copy singular iterators, fixes #3538 [Iostreams] Allocate exceptions on the stack, not the heap. Refs #3612, by Richard Smith. Fix unthrown exceptions. Refs #3311. Fix mapped file errors in windows. Refs #3505. [Exeption] Prevent ADL from finding other dispatch functions or types. Required for #2094. [Fusion] avoid iterator invalidation in segmented_range, fixes #3583
[Spirit] Spirit: more static lexer updates Spirit: added new Qi example Spirit: updating example Don't match substrings in symbols::find. Added Nabialek Trick Example typeof example Implement prefix_find. BOOST_SPIRIT_AUTO added Spirit: bumped version number after the release of 1.41 Spirit: fixed references to corresponding articles at Spirit site. [Xpressive] use boost::optional's swap instead of std::swap [Random] Allow arbitrary values to be used as seeds for linear_congruential, linear_feedback_shift, and any generators that depend on them. Fixes #3516 Fix min/max problems
[Exeption] Fixed unqualified use of size_t in object_hex_dump.hpp Bug ticket 3641, also merging other fixes from the Release branch. [Format] copy-constructor now copies .dumped_ , fixing Ticket #3610 fixing elementary syntax error introduced in rev. 57734 [Functional] Turn on warnings as errors for the hash tests. [Program_options] Add option name to a few exception classes. Fixes #3423. Patch from Sascha Ochsenknecht. correct usage of tokenizer, memory bug, Fixes #3525 [Graph] Fix compilation error due to undefined fprintf/stderr. [Unordered] Use 'E' for key extractor, freeing 'K' for key. Support incomplete template parameters to unordered containers. 以上更新内容の一部 ttp://booster.x0.to/
Version 1.41.0 New Library: Property Tree. Updated libraries: DateTime, Filesystem, Iostreams, Math, Multi-index Containers, Proto, Python, Regex, Spirit, System, Thread, Unordered, Utility, Wave, Xpressive. Updates to boost build and quickbook. The CMake build system for Boost, still under development here, has been removed from the main release to avoid confusion.
更新しました。1.41正式版がリリースされてから一週間経ってもtrunkが1.42に移行しておりませんので、 マイナーバージョンアップ版が出るかもしれませんね。 ttp://booster.x0.to/ 以下更新内容の一部 [Program_options] allow empty values in config file, Fixes #1537 [Spirit] Spirit: moved iter_pos parser to repository, added example Spirit: fixed token_def::what() Spirit: Moving karma::symbols to main code base [Format] fixes new functions (remaining_args, expected_args, ...) in case bound.size()==0 [Regex] Allow std::locale's to not have a messages facet installed (fixes some STLPort issues). Allow match_results to handle singular iterators. [Integer] Add support for long long throughout. Fixes #653. Update Boost.Integer meta-programming classes to work with intmax_t where possible - ie to be 64-bit clean. [Thread] Ensure call_once event is correctly cleaned up A partial fix for issue #2100: use boost::throw_exception for all exceptions except thread_interrupted Don't use timed_lock to do a lock Added missing BOOST_THREAD_DECL for at_thread_exit_function Using BOOST_ASSERT rather than assert [Graph] Changed vertex_iterator to have vertex_descriptor rather than vertices_size_type as its value type Removed old CSR interface; fixes #3135 [Smart_ptr] Add error checking to lwm_pthreads.hpp. Refs #2681. Remove std::move references. Refs #3570.
更新しました。SVNは1.42に移行しました。 ttp://booster.x0.to/ 以下更新内容の一部 [Program_options] ProgramOptions: added a couple of missing std:: namespace qualifiers [Spirit] Spirit: added karma::symbols generator, updated docs, tests, and example Spirit: removed UB in rule and token_def initialization, added copy constructor for token_def Spirit: added karma::auto_ and related facilities, added test Spirit: added new karma example (auto_facilities.cpp), tweaks to auto_ tests Spirit: added auto based overloads for API functions where possible [Serialization] fixed BOOST_STATIC_WARNING implementation macro name conflict Fix memory leaks in void_caster short cut memory leaks [Uuid] Added uuid library Removed BOOST_STATIC_ASSERT, replaced with a static method [Iterator] Made sure that iterator_facade's nested ``::pointer`` type is always the same as what's returned from operator->. For input iterators, that wasn't always the case (see operator_arrow_proxy).Fixes #1019. [Graph] Fixed missing #endif [Integer] Change long long to boost::long_long_type etc. Make code respect BOOST_NO_INTEGRAL_INT64_T. [Bind] Make mem_fn work with overloaded unary operator&. Refs #3003. Sorry it took so long. [Exeption] Ticket #3211
更新しました。今回初めてgraph_parallelのlink=shared, runtime-link=sharedのビルドが可能になり、 同じく初めてビルドエラー無しでフルビルドが出来ました。 ttp://booster.x0.to/ 以下更新内容の一部 [Program_options] consistent handling of namespace std [Spirit] unicode support Spirit: fixed include guard conflict (fixes #3724) [Graph] Factored out declspec code; added BOOST_GRAPH_SOURCE where necessary [Iostream] If a write is going to go past the end of the restricted area, write up to the end before throwing an exception. [Uuid] Fixed name_generator for different sizes of wchar_t [Serialization] 1. Fixed memory leak in shared_ptr loading 2. Fixed error in polymorphic archive implementation Speed up loading of ordered collections [Smart_ptr] Avoid static destruction order issues with quick_allocator. [Proto] fix BOOST_PROTO_EXTENDS to work with elaborated types [Xpressive] disable proto's unary operator& for basic_regex objects, references #3712 [Fusion] corrected reverse_view [Gil] Added gil namespace prefix to at_c<...> calls. [Regex] Symbian patches. Fixes #3764. Fixes #3763.
*エラーメッセージ Check failed in file /cygdrive/D/boost_1_39_0/boost/numeric/ublas/lu.hpp at line 276: detail::expression_type_check (prod (triangular_adaptor<const_matrix_type, upper> (m), e), cv2) Error while dumping state (probably corrupted stack)
更新しました。 ttp://booster.x0.to/ 以下更新内容の一部 [Regex] Improve recursion branch-prediction. [Spirit] Spirit: comment typo fixes Spirit: minor test adjustment Added note to fix the thing Spirit: expanded the quick hack to include strings Spirit: added new Karma example Spirit: little endian binary test fix [Multi_index] handled serialization of non default constructible values [Selialization] Fix plugin test/demo
更新しました。Boost.MPIにつきましては、今後MPICH2以外の使用を検討致します。 ttp://booster.x0.to/ 以下更新内容の一部 [Fusion] associative forward iterators in example and docs [Random] Attempt to fix ranlux failures Try to get more information out of the failing tests. [Spirit] Spirit: fixing a problem in sequences if the attribute is a container of containers, more test cases Spirit: accounting for changed fusion::fold parameter sequence in new Boost version Spirit: fixed SA detection for karma::maxwidth [Iostreams] Don't throw if seeking the end of the restricted area of a file. Add dummy returns after calling throw_exception. [Type_traits] Fixes #3800. [Circular_buffer] circular_buffer: constant complexity of clear method and destructor [Asio] Windows needs the OVERLAPPED structure to be valid until both the initiating function call has returned and the completion packet has been delivered. Don't block signals while performing system calls, but instead restart the calls if they are interrupted. Add boost_ prefix to extern "C" thread entry point function. Refs #3809. Add a workaround for some broken Windows firewalls that make a socket appear bound to 0.0.0.0 when it is in fact bound to 127.0.0.1. [Functional] Rename namespace BOOST_HASH_DETECT_FLOAT_FUNCTIONS to lower case for consistency. [Uuid] optimized seed_rng optimized string_generator
更新しました。Boost.MPIのビルドにはMPICH 1.2.5を使用しましたが、>>436のサンプルは上手く動作しません。 ttp://booster.x0.to/ 以下更新内容の一部 [Unordered] Formatting changes, mostly to fit within 80 characters. Also, some C casts converted to static_cast. [Spirit] Spirit: added concept checks for qi API functions, fixed qi::match functions, added basic_istream_iterator Spirit: added karma::auto_() Spirit: added missing top level include file Spirit: fix for one of the multi_pass policies Spirit: added more tests for Karma auto_ Spirit: adding the matches.hpp[] directive Spirit: adding tests for the matches[] directive [Asio] Include boost/limits.hpp rather than <limits>, to support older compilers. Refs #3743. Drop back to second_clock if microsec_clock is unavailable. Refs #3743. Use sockatmark if SIOCATMARK is not defined. Refs #3743. Disable iostreams-related functionality if BOOST_NO_IOSTREAMS is defined. Refs #3743. Apply fix for reported excessive CPU usage under Solaris. Refs #3670. Support platforms that don't define INET6_ADDRSTRLEN. Refs #3743. [Wave] Wave: updating copyrights, fixing issues introduced by latest changes to multi_pass. [Regex] Fix bug that effects recursive expressions combined with repeats. Speed up the code a little, and stop swapping stream buffers around in case that's the cause of some test failures. [Iostreams] More unreachable returns. This should only be a temporary workaround.
差し替え更新しました。Boost.MPIはMPICH2 1.2.1仕様に戻しました。 ttp://booster.x0.to/ 以下追加更新内容 [Spirit] Spirit: fixing attribute handling in sequences [regex] Change name of extern "C" function so it's prefixed with "boost_"
更新しました。 ttp://booster.x0.to/ 以下更新内容の一部 [Spirit] Spirit: added compile time assertion diagnosing a configuration mismatch Spirit: working around false static assert on earlier versions of gcc Spirit: fixing tests for qi::matches[] Spirit: fixed signed/unsigned mismatch in Qi's binary parsers Spirit: added spirit::ostream_iterator Spirit: fixed violation reported by inspect Spirit: fixing nasty bug in rule copy constructor Spirit:: adding missing function in multi_pass policies. Spirit: added specialization for signed char - doh! [Bimap] fix missing include headers, ticket #1521 fix count() constness, ticket #2484 [Graph] Changed to BOOST_THROW_EXCEPTION (except in one test case) [Math] Change cbrt implementation to use a better performing algorithm. Change functions named "check" so they don't conflict with Apple macro of the same name. [Asio] Add coroutine::is_complete() and support for "yield break;". [Type_traits] Fixes #3704. [Property_tree] Fix a weakness in the XML whitespace tests. This allows me to have correct tests after fixing PR2855, which is also in this commit. [Python] Support different MS calling conventions, thanks to Nicolas Lelong. Closes #3833. [Mpl] Fix bitand/bitor conflicts with iso64.h header
更新しました。trunkはまだ1.42のままです。 ttp://booster.x0.to/ 以下更新内容の一部 [Exeption] improved memory leak test. [Math] Improve the performance of the Bessel functions, and update docs. [Fusion] Fusion: adding overload for const parameter types Fusion: fixed adapt_class to be usable with Spirit, added adapt_class_named [Spirit] Complete Unicode Level-1 support: table generation. Spirit: adding workaround for MSVC falsly trzing to use multi_pass::operator== for other iterators Spirit: buffer[buffer[...]] does not result in double buffering anymore, added tests [Property_tree] Fix an issue in MSVC for ptree::equal_range.
[Regex] Improve regex performance on msvc by removing statically allocated recursion stack, and using a std::vector instead. [Program_options] fix in winmain, Fixes #3879 [Serialization] Added comment regarding intentional anonymous namespace in header [Statechart] simple_state::context() now also finds bases of state types. [Uuid] switch from the Boost Test Library to boost/detail/lightweight_test.hpp moved uuid generators into their own file [Wave] Wave: added found_unknown_directive preprocessing hook, bumped version number
更新しました。trunkは1.43に移行しました。 ttp://booster.x0.to/ 以下更新内容の一部 [Fusion] adapt plain old array types (1) [Typeof] Apply variadic functions patch from Sergey Zubkovsky. [Spirit] Spirit: raw[] and lexeme.hpp[] do not pre-skip anymore Spirit: adding no_skip[] directive, docs, tests, etc. added code for pre-skipping "implicit lexeme" rules [Lexical_cast] Use BOOST_LCAST_THROW_BAD_CAST consistently. [Functional] Stop using the deprecated BOOST_HAS_ macros in unordered and hash. [Unordered] Stop using the deprecated BOOST_HAS_ macros in unordered and hash. [Thread] Changed boost.thread to use BOOST_NO_RVALUE_REFERENCES rather than BOOST_HAS_RVALUE_REFS Overload boost::move for thread& and thread&& [Static_assert] Use BOOST_NO_STATIC_ASSERT [Archive] change to avoid ">>" syntax error when passed a template instance [Property_tree] Make BOOST_PROPERTY_TREE_THROW an alias for BOOST_THROW_EXCEPTION. [Program_options] Robustify disambiguation of full/approximate matches. Fixes #3942.
なので、rapidxml.hpp の typedef void *(alloc_func)(std::size_t); // Type of user-defined function used to allocate memory
の行を typedef void *alloc_func_result_type; typedef alloc_func_result_type (alloc_func)(std::size_t); // Type of user-defined function used to allocate memory
更新しました。 ttp://booster.x0.to/ 以下更新内容の一部 [Fusion] adapt template classes/structs [Math] Use the official boost.math check for long double [Spirit] Spirit: fixed #3806 (spirit/home/support/multi_pass.hpp missing functor_input #include) Added buffering_input_iterator to multi_pass suite adding default_wide char_encoding [Graph] Changed to allow characters that are not 8-bit; added one-bit-per-color color map [Random] Rearrange the componenents in libs/random and create a library for random_device. Fixes #3672 [Asio] Reworked implementation. Fix bug where 0-byte reads were incorrectly passing an eof error_code to the handler. Refs #4023. [Proto] fix error in invocation of callable monomorphic function objects, expression self-assignment creates an assign node [Uuid] Fixed bug in basic_random_generator. It wasn't producing random uuids correctly.
更新しました。 ttp://booster.x0.to 以下更新内容の一部 [Asio] Fix epoll_reactor bug where cancelled operations would complete with a "success" error_code. Use cancel() to avoid Windows behaviour where a connection is reset if the socket is closed while there is a pending read operation. [Proto] try again to get proto assignment overloads right add an appendix for release notes [Wave] Wave: added new preprocessing hook: emit_line_directive, added corresponding functionality to wave driver Wave: Fixed the wave driver application to strip leading and trailing whitespace from macro names specified on the command line using -U. [Spirit] Spirit: Fixing bug in display_attribute_of_parser utility. Straight UTF-8 implementation Spirit: Added missing namespace qualification When supplying 3 arguments for the adder, require the third (val) argument. Otherwise, it will be ambiguous with the 2-param version. Spirit: renaming directory [Unordered] Add quick_erase to the unordered containers. Refs #3966. [Graph] Fixed warning (and probable bug) in test case Re-enabled Spirit-based parser (but not by default) and cleaned up Graphviz reader implementation [Numeric] storage.hpp: see #3968, applied patch to use references instead of copies in swap implementations [Functional] Remove optimization which causes 0.5 to hash to 0. Refs #4038. [Python] Handle the destructor call in a way that keeps msvc happy. Fixes #4003
エラー忘却型コンピューティング - Wikipedia ttp://ja.wikipedia.org/wiki/%E3%82%A8%E3%83%A9%E3%83%BC%E5%BF%98%E5%8D%B4%E5%9E%8B%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0
更新しました。 ttp://booster.x0.to 以下更新内容の一部 [Spirit] Spirit: added Karma generator for outputting arbitrary sexpr Spirit: improving customization points for karma alternatives [Asio] Change the resolver implementation to no longer require the typedefs Don't allow speculative reads when message_out_of_band is specified. Don't perform a speculative read when an out-of-band read is pending. New kqueue reactor implementation using one-shot event registration. Fix so that lock is not held while reactor is running. [Mpl] Fix for #1992 [Range] Boost.RangeEx merged into Boost.Range [Graph] Added missing include [Property_map] Converted dynamic_properties to use boost::shared_ptr instead of std::auto_ptr Added vertex_bundle and edge_bundle property maps, plus fixed some property map allocation bugs [Detail] Uncomment ifdef test that was accidentally left commented. [Unordered] Use boost::throw_exception in unordered. [Iostreams] Explicitly qualify call to equal for compilers which find it ambiguous. [Thread] Fix use of rvalue ref in futures