Opened 9 years ago

Closed 9 years ago

#8801 closed Feature Requests (fixed)

boost 1.54 coroutine source is incomplete.

Reported by: rivercheng@… Owned by: olli
Milestone: To Be Determined Component: coroutine
Version: Boost 1.54.0 Severity: Problem
Keywords: coroutine Cc:

Description

This is a unbelievable bug so actually I think maybe it's my own ignorance. All 'ipp' files of 'coroutine' are missing so many classes and functions lack of definition.

I should have reported this bug in beta1 release, but I thought that incomplete files are normal in a beta release.

(Maybe not a complete list) There's no implementation for boost::coroutines::detail::standard_stack_allocator::default_stacksize(void) boost::coroutines::detail::coroutine_context::operator=(class boost::coroutines::detail::coroutine_context const &) boost::coroutines::detail::coroutine_context::jump(class boost::coroutines::detail::coroutine_context &,int,bool) boost::coroutines::detail::coroutine_context::coroutine_context(void (cdecl*)(int),struct boost::coroutines::stack_context *) boost::coroutines::detail::standard_stack_allocator::allocate(struct boost::coroutines::stack_context &,unsigned int) boost::coroutines::detail::standard_stack_allocator::deallocate(struct boost::coroutines::stack_context &) boost::coroutines::detail::coroutine_context::coroutine_context(class boost::coroutines::detail::coroutine_context const &)

Change History (8)

comment:1 by rivercheng@…, 9 years ago

Both stack_allocator_windows.hpp and stack_allocator_posix.hpp are missing. I still cannot believe this is really a bug than my own mistake.

comment:2 by anonymous, 9 years ago

Ok, I found out the source files are in the directory libs/coroutine. I think some compiling error caused they are not included in the static lib files.

comment:3 by anonymous, 9 years ago

Actually the title is wrong. The source files are there, but somehow it is not compiled to the static libs. I've already changed -explicit yield_sources ; +explicit allocator_sources ;

But on windows 7 with MSVC 2010 compiler, the static lib compiled still miss the definitions listed above.

comment:4 by anonymous, 9 years ago

Finally, I found out that the problem is that the windows auto-linking is not working for coroutine library. The users have to manually add link dependency for libboost-coroutine. I think this is some bugs in the header files?

comment:5 by olli, 9 years ago

1.) a bugfix was missed in the release (Jamfile.v2: yield_source -> allocator_source), patch applied to maintanance branch

2.) all tests on Windows (32bit/64bit) pass for MSVC 9,10,11 - take a look at http://www.boost.org/development/tests/release/developer/coroutine.html

Could you go to libs/coroutine/test and execute the unit tests (invoke b2) and give me the output?!

comment:6 by rivercheng@…, 9 years ago

I cannot edit the original post. Actually this is just a minor issue. It's just the auto-linking is not enabled (boost/config/auto_link.hpp is not included). It works well after manually add the lib dependence. Can I change this to a feature request: adding auto-link support in windows? Thanks a lot.

comment:7 by olli, 9 years ago

Severity: ShowstopperProblem
Type: BugsFeature Requests

changed to feature request

comment:8 by olli, 9 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.