[Bug c++/61260] New: Issue with instantiates of variadic templates inside other templates (possibly name lookup problem)
delong.j at fb dot com
gcc-bugzilla@gcc.gnu.org
Tue May 20 23:31:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61260
Bug ID: 61260
Summary: Issue with instantiates of variadic templates inside
other templates (possibly name lookup problem)
Product: gcc
Version: 4.8.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: delong.j at fb dot com
Created attachment 32833
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=32833&action=edit
Example source snippets
Calling a variadic function template that returns an instantiation of a
variadic class template seems to sometimes incorrectly fail to find member
functions of the class.
In the attached, error.cc says:
error: ‘Hey::str() [with Blah = {const char (&)[7], const char*&};
std::string = std::basic_string]’ is not a member of ‘Hey’
Modifying it to fixed.cc compiles.
If you make the strings the same length in the ternary operator, it also
compiles. (fixed2.cc.)
Turning the struct "A" into a non-template also leads to it compiling
(fixed3.cc).
More information about the Gcc-bugs
mailing list