[Bug c++/59135] Incorrect ambiguity in constexpr function overloads

2021-08-27 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59135

Andrew Pinski  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |DUPLICATE

--- Comment #4 from Andrew Pinski  ---
Dup of bug 58354.

*** This bug has been marked as a duplicate of bug 58354 ***

[Bug c++/59135] Incorrect ambiguity in constexpr function overloads

2020-07-10 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59135

Jonathan Wakely  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
  Known to fail||10.1.1, 11.0
   Keywords||rejects-valid
   Last reconfirmed||2020-07-10
 Ever confirmed|0   |1
 CC||jason at gcc dot gnu.org

--- Comment #3 from Jonathan Wakely  ---
Fixed by r11-1571 which was also backported to the gcc-10 branch.

Jason, was this fixed by the change to tsubst_pack_expansion? Should it be
added to the testsuite before closing it?

[Bug c++/59135] Incorrect ambiguity in constexpr function overloads

2020-07-10 Thread familiebaumanns at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59135

Bernd Baumanns  changed:

   What|Removed |Added

 CC||familiebaumanns at gmail dot 
com

--- Comment #2 from Bernd Baumanns  ---
It works now in gcc trunk

[Bug c++/59135] Incorrect ambiguity in constexpr function overloads

2013-11-20 Thread daniel.kruegler at googlemail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59135

--- Comment #1 from Daniel Krügler daniel.kruegler at googlemail dot com ---
The problem seems to exist in gcc 4.7.3 and within the recent 4.9.0 trunk. The
following variant of the code removes unnecessary library dependencies and
constexpr (which is not needed to reproduce the problem):

//--
template typename T
struct foo
{
};

template int N, typename T, typename ...Us
bool bar(T , Us ...)
{
return false;
}

template int N, typename T, typename ...Us
bool bar(fooT , Us ...)
{
return true;
}

int main()
{
bar0(fooint(), 1, 2);
}
//--