[Bug c++/71446] Incorrect overload resolution when using designated initializers

2019-02-25 Thread roman.perepelitsa at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71446 --- Comment #4 from Roman Perepelitsa --- Please take a look at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71446#c1. This code compiles. Given that it contains `{.value = 0}`, one would reasonably expect that it creates an instance of a struct

[Bug libstdc++/71096] std::get did not work for nested derived classes from std::tuple if one element is empty

2016-11-22 Thread roman.perepelitsa at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71096 Roman Perepelitsa changed: What|Removed |Added CC||roman.perepelitsa at gmail dot com

[Bug middle-end/68360] GCC bitfield processing code is very inefficient

2016-11-18 Thread roman.perepelitsa at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68360 Roman Perepelitsa changed: What|Removed |Added CC||roman.perepelitsa at gmail dot com

[Bug c++/63875] Bogus unused-but-set-parameter warning when expanding a variadic template argument pack

2016-07-14 Thread roman.perepelitsa at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63875 Roman Perepelitsa changed: What|Removed |Added CC||roman.perepelitsa at gmail dot com

[Bug c++/71446] Incorrect overload resolution when using designated initializers

2016-06-08 Thread roman.perepelitsa at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71446 --- Comment #1 from Roman Perepelitsa --- The same bug can lead to incorrect behaviour at run time. #include #include struct S { int value; }; void F(S) { puts("right"); } void F(std::initializer_list) { puts("wrong"); }

[Bug c++/71446] New: Incorrect overload resolution when using designated initializers

2016-06-07 Thread roman.perepelitsa at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: roman.perepelitsa at gmail dot com Target Milestone: --- Actual behaviour: the following program compiles. Expected behaviour: doesn't compile. #include struct S { int value

[Bug c++/71382] New: Unary plus doesn't works with pointers to instantiations of function templates

2016-06-02 Thread roman.perepelitsa at gmail dot com
: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: roman.perepelitsa at gmail dot com Target Milestone: --- This compiles: void F(); void G() { +(); } This doesn't: template void F(); void G() { +(); } error

[Bug c++/70544] New: Overload resolution with explicitly specified template arguments

2016-04-05 Thread roman.perepelitsa at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: roman.perepelitsa at gmail dot com Target Milestone: --- When compiling this program: template void F(Args&&...); template int F(Args&&...); int main

[Bug c++/57433] Local classes have an associated namespace

2016-03-23 Thread roman.perepelitsa at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57433 Roman Perepelitsa changed: What|Removed |Added CC||roman.perepelitsa at gmail dot com

[Bug c++/69957] New: Ambiguous overload due to incorrect partial ordering of V<> and V

2016-02-25 Thread roman.perepelitsa at gmail dot com
normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: roman.perepelitsa at gmail dot com Target Milestone: --- === Program #1 === template struct V {}; template void Foo(V, V<Us&...>) {} template vo

[Bug c++/60044] Template argument of alias template not evaluated

2015-12-18 Thread roman.perepelitsa at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60044 Roman Perepelitsa changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|---

[Bug c++/62115] [5 Regression] ICE with invalid default argument

2014-11-06 Thread roman.perepelitsa at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62115 Roman Perepelitsa roman.perepelitsa at gmail dot com changed: What|Removed |Added CC

[Bug c++/62227] New: Templated move not elided

2014-08-22 Thread roman.perepelitsa at gmail dot com
: unassigned at gcc dot gnu.org Reporter: roman.perepelitsa at gmail dot com #include stdio.h struct S { S(int) {} S(const S) = default; // (1) template class = void // (2) S(S other) { puts(move); } }; int main() { S s = 42; (void)s; } This program unexpectedly

[Bug libstdc++/61947] New: Ambiguous calls when constructing std::tuple

2014-07-29 Thread roman.perepelitsa at gmail dot com
: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: roman.perepelitsa at gmail dot com #include tuple struct ConvertibleToAny { template class T operator T() const { return T(); } }; int main() { std::tupleConvertibleToAny t(ConvertibleToAny{}); } Produces

[Bug c++/60044] New: Template argument of alias template not evaluated

2014-02-03 Thread roman.perepelitsa at gmail dot com
: c++ Assignee: unassigned at gcc dot gnu.org Reporter: roman.perepelitsa at gmail dot com $ cat test.cc #include stdio.h template class T using Void = void; template class T, class E = void struct Foo { const char* value = primary template; }; template class T struct FooT