[Bug c/98634] gcc 4.8.5 - 9.3.0 on target x86_64, when compile a exe and linking with a so, and exe's source file extern a var, the final exe has the var with the same name with the one in the so file

2021-01-12 Thread zuogang at huawei dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98634 --- Comment #6 from zuogang --- (In reply to Jakub Jelinek from comment #5) > No RHEL or Fedora compilers are -pie by default, I hate when such important > details change silently under you. > Instead of changing the GCC default in these distros

[Bug c/98634] gcc 4.8.5 - 9.3.0 on target x86_64, when compile a exe and linking with a so, and exe's source file extern a var, the final exe has the var with the same name with the one in the so file

2021-01-12 Thread zuogang at huawei dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98634 --- Comment #4 from zuogang --- (In reply to Jakub Jelinek from comment #1) > And the bug is? > This is due to copy relocations. > And, it has nothing to do with the compiler, it is how linker handles it. thanks for the reply, can you explain wh

[Bug c/98634] gcc 4.8.5 - 9.3.0 on target x86_64, when compile a exe and linking with a so, and exe's source file extern a var, the final exe has the var with the same name with the one in the so file

2021-01-12 Thread zuogang at huawei dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98634 --- Comment #3 from zuogang --- (In reply to Andrew Pinski from comment #2) > This is called a copy relocation. I suspect the GCC you are using is > defaulting to PIE too. the gcc in centos 7 maybe is not pie-default? this verion is also has t

[Bug c/98634] New: gcc 4.8.5 - 9.3.0 on target x86_64, when compile a exe and linking with a so, and exe's source file extern a var, the final exe has the var with the same name with the one in the so

2021-01-12 Thread zuogang at huawei dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98634 Bug ID: 98634 Summary: gcc 4.8.5 - 9.3.0 on target x86_64, when compile a exe and linking with a so, and exe's source file extern a var, the final exe has the var with the same name wi