Opened 12 years ago
Closed 11 years ago
#4480 closed Patches (fixed)
OpenVMS patches for compiler issues workarounds
Reported by: | Owned by: | viboes | |
---|---|---|---|
Milestone: | Boost 1.49.0 | Component: | thread |
Version: | Boost 1.43.0 | Severity: | Problem |
Keywords: | Cc: | viboes |
Description
Hello,
This patch provides fixes for OpenVMS platform/DECCXX compiler.
It is very important for the organization I work for to submit them to upstream Boost in order to make an upgrade to future Boost versions simpler.
This patch related to ticket: #4473
Thanks,
Artyom
Attachments (1)
Change History (8)
by , 12 years ago
Attachment: | thread.patch added |
---|
comment:1 by , 12 years ago
Cc: | added |
---|
comment:2 by , 12 years ago
Please, could you provide the compile errors you get?
I'll provide them as soon as I get to OpenVMS (I think on Sunday)
comment:3 by , 11 years ago
Not sure if you're still looking for the compile errors (these changes still seem applicable in boost 1.46.1 on OpenVMS v8.3 on Alpha, with C++ V7.3-015)
For the change in the future.hpp file, the errors I get without the fixes are:
locks[i]=boost::unique_lock<boost::mutex>(futures[i].future->mutex); .................................^ %CXX-W-REFTEMPORARY, initial value of reference to non-const must be an lvalue at line number 422 in file BOOST_1_46_1:[boost.thread]future.hpp;1 locks[i]=boost::unique_lock<boost::mutex>(futures[i].future->mutex); ................................^ %CXX-E-INASPEFUN, "boost::unique_lock<Mutex> &boost::unique_lock<Mutex>::operator=(boost::unique_lock<Mutex> &) [with Mutex=boost::mutex]" is inaccessible at line number 422 in file BOOST_1_46_1:[boost.thread]future.hpp;1
The errors in thread_data.hpp:
this_thread::sleep(get_system_time()+rel_time); ................................................^ %CXX-E-NOMATOPRFUN, no operator "+" matches these operands operand types are: boost::system_time + const boost::system_time detected during instantiation of "void boost::this_thread::sleep(const TimeDuration &) [with TimeDuration=boost::system_time]" at line 346 of "BOOST_1_46_1:[boost.thread.detail]thread.hpp;1" at line number 138 in file BOOST_1_46_1:[boost.thread.pthread]thread_data.hpp;1 void sleep(const system_time& st) .............^ %CXX-E-SPECALINLTMPFUN, specific definition of inline template function must precede its first use at line number 320 in file BOOST_1_46_1:[libs.thread.src.pthread]thread.cpp;1
I haven't been able to repro the error in thread.cpp
comment:4 by , 11 years ago
Milestone: | Boost 1.44.0 → To Be Determined |
---|---|
Owner: | changed from | to
Status: | new → assigned |
comment:5 by , 11 years ago
Milestone: | To Be Determined → Boost 1.49.0 |
---|
Committed in trunk revision 75787 (sleep part).
comment:7 by , 11 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Committed in release at #76291
Please, could you provide the compile errors you get?