[Bug 1643538] [NEW] gcc 5 copy list initialization creates undefined reference
sobczyk
1643538 at bugs.launchpad.net
Mon Nov 21 12:17:12 UTC 2016
Public bug reported:
g++ > 5.1
introduced a regression
Following code compiled with g++ -std=c++11
#include <memory>
struct HelperArgs
{
std::shared_ptr<bool> dummy;
};
static void freefunc(HelperArgs aa = {}) { }; // doesn't work
//static void freefunc(HelperArgs aa = HelperArgs{}) { }; // works
int main()
{
freefunc();
return 0;
}
creates:
g++ -std=c++11 test.cpp
/tmp/ccDj6FO4.o: In function `main':
test.cpp:(.text+0xc7): undefined reference to `std::shared_ptr<bool>::shared_ptr()'
collect2: error: ld returned 1 exit status
all clang++ compile this code fine
** Affects: gcc-5 (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-5 in Ubuntu.
https://bugs.launchpad.net/bugs/1643538
Title:
gcc 5 copy list initialization creates undefined reference
Status in gcc-5 package in Ubuntu:
New
Bug description:
g++ > 5.1
introduced a regression
Following code compiled with g++ -std=c++11
#include <memory>
struct HelperArgs
{
std::shared_ptr<bool> dummy;
};
static void freefunc(HelperArgs aa = {}) { }; // doesn't work
//static void freefunc(HelperArgs aa = HelperArgs{}) { }; // works
int main()
{
freefunc();
return 0;
}
creates:
g++ -std=c++11 test.cpp
/tmp/ccDj6FO4.o: In function `main':
test.cpp:(.text+0xc7): undefined reference to `std::shared_ptr<bool>::shared_ptr()'
collect2: error: ld returned 1 exit status
all clang++ compile this code fine
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gcc-5/+bug/1643538/+subscriptions
More information about the foundations-bugs
mailing list