bug-gnu-utils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

ld resolving different types


From: Norman Goldstein
Subject: ld resolving different types
Date: Sat, 15 Feb 2020 16:51:14 -0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1

LD version:
   GNU ld version 2.31.1-37.fc30

Platform:
   Linux 5.4.17-100.fc30.x86_64 #1 SMP     x86_64 x86_64 x86_64 GNU/Linux

Compile/Link command:
    gcc tlink.cpp tlink2.cpp -o tlink -lstdc++

The programs compiles and links without warning or error, but resolves /extern int foo/ with /double foo/.  The result of running the program is, of course, garbage:

foo= -858993459

The program contains only 1 definition for foo (the extern statement is a declaration), so the program is not violating the One Definition Rule.

Thank you.



Attachment: tlink.cpp
Description: Text Data

Attachment: tlink2.cpp
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]