[SERVER-32516] Fails to compile with Boost 1.66 Created: 02/Jan/18 Updated: 30/Oct/23 Resolved: 31/Jan/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Build |
| Affects Version/s: | 3.6.1 |
| Fix Version/s: | 3.6.3, 3.7.2 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Jelle van der Waa | Assignee: | Judah Schvimer |
| Resolution: | Fixed | Votes: | 1 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||
| Operating System: | ALL | ||||||||||||||||
| Backport Requested: |
v3.6
|
||||||||||||||||
| Steps To Reproduce: | Compile with: scons core tools --use-system-pcre --use-system-snappy --use-system-yaml --use-system-zlib --use-system-wiredtiger --use-sasl-client --ssl --disable-warnings-as-errors --use-system-boost |
||||||||||||||||
| Sprint: | Repl 2018-02-12 | ||||||||||||||||
| Participants: | |||||||||||||||||
| Description |
|
Mongo fails to compile with Boost 1.66:
|
| Comments |
| Comment by Marek Skalický [ 27/Feb/18 ] | ||||||||||||||||||||||
| Comment by Andrew Morrow (Inactive) [ 26/Feb/18 ] | ||||||||||||||||||||||
|
mskalick - Would you mind opening a new ticket for the problem with the test? We don't generally commit to tickets that are already closed with fixVersions, as it gets confusing. | ||||||||||||||||||||||
| Comment by Githook User [ 12/Feb/18 ] | ||||||||||||||||||||||
|
Author: {'email': 'judah@mongodb.com', 'name': 'Judah Schvimer', 'username': 'judahschvimer'}Message: (cherry picked from commit 3c34eda8d8a38b982a1659b919e9f4b5971ba512) | ||||||||||||||||||||||
| Comment by Marek Skalický [ 12/Feb/18 ] | ||||||||||||||||||||||
Needs to be changed too. | ||||||||||||||||||||||
| Comment by Andrew Morrow (Inactive) [ 31/Jan/18 ] | ||||||||||||||||||||||
|
jwakely - We have committed the obvious fix on master, and I've requested that it get backported to 3.6. | ||||||||||||||||||||||
| Comment by Githook User [ 31/Jan/18 ] | ||||||||||||||||||||||
|
Author: {'email': 'judah@mongodb.com', 'name': 'Judah Schvimer', 'username': 'judahschvimer'}Message: | ||||||||||||||||||||||
| Comment by Jonathan Wakely [ 30/Jan/18 ] | ||||||||||||||||||||||
|
OK, thanks for the reply. For the Fedora package of mongodb we un-bundle the Boost lib (as is Fedora policy) and so need to be able to build against the default version of Boost in Fedora. I've just updated the version of Boost in Fedora rawhide to 1.66.0 and so I'm following another Fedora policy of trying to get bugs fixed upstream first. The maintainer of the Fedora package can just patch it locally until there is an upstream fix. | ||||||||||||||||||||||
| Comment by Andrew Morrow (Inactive) [ 30/Jan/18 ] | ||||||||||||||||||||||
|
jwakely - I agree that the code is easily fixed. We haven't made a priority of fixing it since we build against a fixed copy of boost. We weren't planning to do anything about it until we upgraded that copy in | ||||||||||||||||||||||
| Comment by Jonathan Wakely [ 30/Jan/18 ] | ||||||||||||||||||||||
|
This code is just silly, there's no point using make_optional if you defeat argument deduction, since the whole point of it is to deduce the type.
Or if you need to be explicit about the type, just construct an rvalue, don't use make_optional:
|