diff options
author | Patrick Williams <iawillia@us.ibm.com> | 2012-02-29 17:00:28 -0600 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2012-03-03 08:46:48 -0600 |
commit | b623fb5b9feba1e5eb1808b456f6dd67bcd79cea (patch) | |
tree | d5c3030cbae1b541d27dabf9f49358c48fb05502 /src/build/ifcompiler | |
parent | 2e6867c1170ada1c07d38e4facbf10c619d03e48 (diff) | |
download | talos-hostboot-b623fb5b9feba1e5eb1808b456f6dd67bcd79cea.tar.gz talos-hostboot-b623fb5b9feba1e5eb1808b456f6dd67bcd79cea.zip |
Linker fixes for multiple weak symbols.
We have issues with weak symbols containing member variables
if they exist in multiple modules because each module's code
ends up with their own copy. For objects like Singleton's
this is bad because the objects are no longer singleton.
The original solution for this was to prohibit multiple
definition of the same weak symbol. This causes extra errors
when using templated code such as using a vector<foo> in two
different modules.
The solution here is to search for member values inside of a
weak symbol instead of just duplicate weak symbols. This
allows multiple weak symbol definitions as long as those
weak symbols do not have a contained member value (like a
singleton instance would).
Change-Id: I173dde9be71f169a457b20db8b960c2b89e7a900
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/709
Tested-by: Jenkins Server
Reviewed-by: Van H. Lee <vanlee@us.ibm.com>
Reviewed-by: MIKE J. JONES <mjjones@us.ibm.com>
Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/build/ifcompiler')
0 files changed, 0 insertions, 0 deletions