boostorg / boostorg/phoenix

boost 1.8.1 beta1+gcc-12: multiple definition of `boost::phoenix::placeholders::uarg1'

Open
#111 27 comments 1 reaction 0 assignees View on GitHub
Dominant language
C++
Stars
33
Forks
51
PR merge metrics
No merged PRs in 30d

Description

Hi,

I tried to recompile [freeorion](https://github.com/freeorion/freeorion) v0.4.10.2 with boost 1.81.0.beta1. The linking step run into this problem (stripped duplicated (in meaning) errors):

> /usr/bin/ld: CMakeFiles/freeorionparseobj.dir/parse/VisibilityValueRefParser.cpp.o:(.bss+0x12): multiple definition of `boost::phoenix::placeholders::uarg1'; CMakeFiles/freeorionparseobj.dir/parse/ArithmeticRules.cpp.o:(.bss+0x12): first defined here

It seems like the `boost::phoenix::placeholders::uarg1` (and friends) is allocated in bss in all translation unit that include `boost/phoenix.hpp`

Is it intended?

fwiw, the same code can be linked with gcc 10 and boost 1.80

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.