[Bug c++/69387] New: undefined reference to constant in template
bernd.edlinger at hotmail dot de
gcc-bugzilla@gcc.gnu.org
Wed Jan 20 10:45:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69387
Bug ID: 69387
Summary: undefined reference to constant in template
Product: gcc
Version: 6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: bernd.edlinger at hotmail dot de
Target Milestone: ---
Hi,
the following example is miss-compiled at -O0
cat test.cc
class StatusCode
{
public:
static const int TEST_VALUE = 0x2;
};
typedef bool AssertionResult;
template <typename T1, typename T2>
AssertionResult CmpHelperEQ(const T1& expected,
const T2& actual)
{
if (expected == actual)
return true;
return false;
}
int
main()
{
return CmpHelperEQ(2, StatusCode::TEST_VALUE) ? 0 : 1;
}
gcc test.cc
test.cc:(.text+0x14): undefined reference to `StatusCode::TEST_VALUE'
collect2: error: ld returned 1 exit status
More information about the Gcc-bugs
mailing list