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?