更新しました。何となく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