diff --git a/src/lib/iter-tree-explorer.hpp b/src/lib/iter-tree-explorer.hpp index 073f0a8a4..b716fa6e4 100644 --- a/src/lib/iter-tree-explorer.hpp +++ b/src/lib/iter-tree-explorer.hpp @@ -258,6 +258,13 @@ namespace lib { > { }; + template + struct shall_use_Lumiera_Iter + : __and_ + ,__not_> + > + { }; + template struct _TreeExplorerTraits @@ -273,7 +280,7 @@ namespace lib { }; template - struct _TreeExplorerTraits>> + struct _TreeExplorerTraits>> { using SrcIter = typename std::remove_reference::type; }; diff --git a/tests/library/iter-tree-explorer-test.cpp b/tests/library/iter-tree-explorer-test.cpp index 92f8900ca..fbf8c084a 100644 --- a/tests/library/iter-tree-explorer-test.cpp +++ b/tests/library/iter-tree-explorer-test.cpp @@ -354,11 +354,17 @@ namespace test{ // test routine called the expansion functor five times CHECK (5 == childBuffer.size()); + verify_treeExpandingIterator( treeExplore(CountDown{5}) .expand([](CountDown const& core){ return CountDown{ yield(core) - 1}; }) ); + verify_treeExpandingIterator( + treeExplore(CountDown{5}) + .expand([](CountDown const& core){ return NumberSequence{ yield(core) - 1}; }) + ); + #if false /////////////////////////////////////////////////////////////////////////////////////////////////////////////TICKET #1118 : GDB Segfault on loading the inferior /////////////////////////////////////////////////////////////////////////////////////////////////////////////TICKET #1118 : Generated code works just fine and passes Test though #endif /////////////////////////////////////////////////////////////////////////////////////////////////////////////TICKET #1118 : GDB Segfault on loading the inferior @@ -366,6 +372,11 @@ namespace test{ treeExplore(CountDown{5}) .expand([](auto & it){ return CountDown{ *it - 1}; }) ); + + verify_treeExpandingIterator( + treeExplore(CountDown{5}) + .expand([](auto it){ return decltype(it){ *it - 1}; }) + ); } diff --git a/wiki/thinkPad.ichthyo.mm b/wiki/thinkPad.ichthyo.mm index 8a6c3c259..87fb3d6fd 100644 --- a/wiki/thinkPad.ichthyo.mm +++ b/wiki/thinkPad.ichthyo.mm @@ -5361,9 +5361,8 @@ - - - + + @@ -5371,12 +5370,17 @@ - - + + + + + - + + +