[Bug libstdc++/77619] New: uninitialized_meow_construct and friends not exception safe

2016-09-16 Thread rs2740 at gmail dot com
Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- The new uninitialized_{default,value}_construct(_n)? and uninitialized_move(_n)? implementations are not exception safe: previously

[Bug c++/77616] A variadic polymorphic lambda call fails with zero arguments

2016-09-19 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77616 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #1 from TC

[Bug c++/77712] New: int() is incorrectly treated as a null pointer constant in C++11 and later

2016-09-23 Thread rs2740 at gmail dot com
: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- GCC accepts int *p = int(); even though per DR 903, only integer literals with the value zero are null pointer constants. This

[Bug c++/67200] Copy elision and implicit move in return performed in cases not allowed by standard

2016-09-29 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67200 TC changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---

[Bug c++/69905] Digit separators break literal operators

2016-10-26 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69905 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #4 from TC

[Bug c++/78163] New: ref-qualified function type incorrectly accepted in function parameter type

2016-10-30 Thread rs2740 at gmail dot com
: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- void f(void () &); void g(void (*)() &); void h(void (&)() &); void i(void (* const &)() &); None of these

[Bug c++/78163] ref-qualified function type incorrectly accepted in function parameter type

2016-10-31 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78163 --- Comment #2 from TC --- (In reply to Martin Liška from comment #1) > For: > $ gcc --version > gcc (SUSE Linux) 6.2.1 20160830 [gcc-6-branch revision 239856] > > $ gcc pr78163.c > pr78163.c:1:16: error: expected ‘;’, ‘,’ or ‘)’ before ‘&’ toke

[Bug c++/70163] C++ DR 257 constructor forward to virtual base class's constructor in an abstract class required

2016-11-04 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70163 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #2 from TC

[Bug libstdc++/78273] New: The transparent version of {map,set}::count should call _M_count_tr

2016-11-09 Thread rs2740 at gmail dot com
Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- They are currently > template > auto > count(const _Kt& __x) const > -> decltype(_

[Bug libstdc++/78302] New: is_move_constructible_v> should be false

2016-11-10 Thread rs2740 at gmail dot com
P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- #include #include struct nonmovable { nonmovable(nonmovable&&) = delete; }; static_assert(!std::is_move_constructible_v>); //fires

[Bug libstdc++/78302] is_move_constructible_v> should be false

2016-11-10 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78302 --- Comment #2 from TC --- Ugh, quasi-dup, I suppose. But if I'm reading the correspondence correctly, the ABI breaking is only because of triviality, correct? So if we just want to make is_move_constructible not lie, it should be possible to do

[Bug c++/78358] [7 Regression] wrong types for std::tuple decomposition

2016-11-15 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78358 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #4 from TC

[Bug libstdc++/78371] New: list::sort doesn't work with non-default-constructible allocators

2016-11-15 Thread rs2740 at gmail dot com
ormal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- It default constructs the 1+64 temporary lists, which 1) likely does the wrong thing for stateful allocators and 2) won't

[Bug c++/78388] New: Bogus "declaration shadows template parameter" error with parenthesized function-style casts

2016-11-16 Thread rs2740 at gmail dot com
NCONFIRMED Keywords: rejects-valid Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Reduced from http://stackoverflow.com/q/40637781/2756719: templ

[Bug libstdc++/66742] abort on sorting list with custom allocator that is not stateless

2016-11-16 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66742 --- Comment #9 from TC --- The ugly fix in Comment #6 should be performant, if, well, ugly. It may be worth considering holding the nodes via a different type. There's no real reason why the temporary holders need to be a `list` or have a copy o

[Bug libstdc++/78389] New: list::merge and list::sort are not exception safe

2016-11-16 Thread rs2740 at gmail dot com
: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- If a comparison throws in the middle of the loop, - list::merge will have spliced some elements over without updating the size of the lists. - list::sort will destroy any

[Bug c++/78446] New: Ambiguous member lookup for operator() in a function call expression treated as hard error in SFINAE context

2016-11-21 Thread rs2740 at gmail dot com
Status: UNCONFIRMED Keywords: rejects-valid Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Reduced from http://stackoverflow.com/q

[Bug c++/78457] attempt to instantiate unused template

2016-11-21 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78457 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #1 from TC

[Bug c++/60009] g++ allows copy-initialization of an array of class type from a non-braced string literal

2014-06-24 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60009 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #1 from TC

[Bug c++/65415] New: using, base class static member function template, and decltype

2015-03-12 Thread rs2740 at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com >From http://stackoverflow.com/questions/29013260. Minimized repro: struct default_check { template static int check(...); }; struct is_addable : default_ch

[Bug libstdc++/65352] array::begin()/end() etc. forms a null reference and breaks on clang+ubsan

2015-03-12 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65352 --- Comment #3 from TC --- Depends on how http://cplusplus.github.io/LWG/lwg-active.html#2443 comes out in LEWG, it might be a good idea to go with a solution that maintains the `constexpr`-ness so that it doesn't have to be redone again if the c

[Bug c++/62116] Allowing redeclaration of global variable x using ::x

2015-03-13 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62116 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #5 from TC

[Bug c++/65520] New: elaborated-type-specifiers and inaccessible injected-class-names

2015-03-22 Thread rs2740 at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Repro: struct A {}; struct B : private A {}; struct C : public B { struct A m_a; // error: A is the inaccessible injected-class-name }; Per [basic.lookup.elab

[Bug libstdc++/65543] New: rvalue stream insertion and extraction operators incorrectly implemented

2015-03-24 Thread rs2740 at gmail dot com
Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Repro: #include #include struct A{}; void operator<<(std::ostream &, A const &){ } void operator>>(std::istream &, A &am

[Bug libstdc++/65543] rvalue stream insertion and extraction operators incorrectly implemented

2015-03-24 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65543 --- Comment #1 from TC --- (In reply to TC from comment #0) > which breaks if the operator<< called does not return a reference stream. A > similar issue affects operator>> for rvalue streams. I meant "a reference to the stream".

[Bug libstdc++/65631] New: seed_seq should not be copyable

2015-03-30 Thread rs2740 at gmail dot com
++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com >From http://stackoverflow.com/q/29350040/2756719, repro: #include int main(int, char **) { std::seed_seq seed1{1337, 42}; std::seed_seq seed2(seed1); std::seed_seq seed3 = seed2; return 0; } Per

[Bug c++/66109] defining constexpr objects without initializer

2015-05-11 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66109 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #3 from TC

[Bug libstdc++/54351] ~unique_ptr() should not set stored pointer to null

2015-05-26 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54351 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #12 from TC

[Bug libstdc++/54351] ~unique_ptr() should not set stored pointer to null

2015-05-27 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54351 --- Comment #14 from TC --- Well, I would have argued that if the specification doesn't say that a function does X, then it doesn't do X. NullablePointer/CopyAssignable only means that the assignment operation must be supported. But then I reali

[Bug c++/56701] [C++11] The *this* pointer fails to bind to rvalue reference to pointer type

2015-09-04 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56701 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #3 from TC

[Bug c++/67633] New: decltype on parenthesized class member access of a prvalue sometimes return wrong results

2015-09-18 Thread rs2740 at gmail dot com
Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Per the resolution of CWG 616, given struct A { double x; };, decltype((A().x)) should be double&&. Howe

[Bug c++/67829] New: Bogus "ambiguous template instantiation" error with partial specializations involving a template template parameter

2015-10-02 Thread rs2740 at gmail dot com
Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Repro: template class Purr { }; template class, class&g

[Bug libstdc++/63176] std::generate_canonical::digits>() generates 1.0f

2015-10-09 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63176 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #3 from TC

gcc-bugs@gcc.gnu.org

2015-10-28 Thread rs2740 at gmail dot com
rmal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Test case: #include struct C { virtual ~C(){} void operator&() const = delete; }; int main() { std::rethrow_if_

[Bug c++/68177] New: Lambda capture doesn't work correctly when lambda is used in a pack expansion

2015-11-01 Thread rs2740 at gmail dot com
erity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Repro: void swallow(...) {} template void foo() { int t = 0; swallow( ([&t]{return 0;}(), Is)... ); }

[Bug c++/68071] Generic lambda variadic argument pack cannot be empty

2015-11-03 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68071 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #1 from TC

[Bug c++/68288] botched floating-point UDL

2015-11-12 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68288 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #1 from TC

[Bug c++/64679] New: Spurious redefinition error when parsing not-quite-most-vexing-parse declarations

2015-01-19 Thread rs2740 at gmail dot com
: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Repro: class Bar{ public: Bar(int, int, int); }; int main () { int x = 1; Bar bar(int(x), int(x), int{x}); } gcc HEAD 5.0.0 20150119

[Bug libstdc++/64865] std::allocator::construct/destroy not called for specialization of std::allocator

2015-01-30 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64865 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #2 from TC

[Bug c++/64969] New: generic functions do not work with placeholder return types

2015-02-07 Thread rs2740 at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com GCC 4.9 added generic functions based on the draft Concepts Lite TS N3889. (They now called abbreviated function templates.) However, the implementation does not work

[Bug libstdc++/65092] New: Container adaptors missing allocator-extended constructors

2015-02-17 Thread rs2740 at gmail dot com
Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com The allocator-extended constructors of std::stack, std::queue and std::priority_queue are missing.

[Bug libstdc++/65352] New: array::begin()/end() etc. forms a null reference and breaks on clang+ubsan

2015-03-08 Thread rs2740 at gmail dot com
: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Repro: #include int main(){ std::array foo; foo.begin(); // or end(), etc. } Output (http://coliru.stacked-crooked.com/a/e1cbe7e73bcee449

[Bug c++/61892] RVO not occurs with constructor with universal reference arguments

2014-07-24 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61892 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #4 from TC

[Bug c++/62110] Attempting to use template conversion operator in a contextual conversion

2014-08-12 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62110 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #2 from TC

[Bug c++/63217] New: template conversion operator returning const reference not used for conversion in some cases

2014-09-10 Thread rs2740 at gmail dot com
Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Minimized repro: struct foo { template operator const T & () { static T t {}; return t;} }; int main() { int t(

[Bug libstdc++/68869] New: map::insert(P&&) broken in some cases

2015-12-11 Thread rs2740 at gmail dot com
libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- According to the standard ([map.modifiers]), template pair insert(P&& x); is equivalent to return emplace(std::forward(x)), provided that std::is_constructibl

[Bug libstdc++/68869] map::insert(P&&) broken in some cases

2015-12-11 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68869 --- Comment #3 from TC --- This was http://cplusplus.github.io/LWG/lwg-defects.html#2005. I don't think the S example breaks any rule in the pre-LWG2005 version, either. That version requires that "P shall be convertible to value type", and st

[Bug c++/68957] New: Wrong overload resolution for unscoped enums with fixed underlying type

2015-12-17 Thread rs2740 at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Repro: #include enum E : char { e }; void f(char) { puts(__PRETTY_FUNCTION__); } void f(int) { puts(__PRETTY_FUNCTION__); } int

[Bug c++/58109] alignas() fails to compile with constant expression

2015-12-19 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58109 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #5 from TC

[Bug libstdc++/68995] New: Including both and can cause ADL problems in std::function SFINAE

2015-12-19 Thread rs2740 at gmail dot com
Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Repro adapted from http://stackoverflow.com/q/34334735/2756719: #include #include #include std::tr1::shared_ptr test() { return

[Bug libstdc++/68995] Including both and can cause ADL problems in std::function SFINAE

2015-12-20 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68995 --- Comment #3 from TC --- (In reply to Jonathan Wakely from comment #2) > (In reply to Andrew Pinski from comment #1) > > I think TR1 is considered as non-supported now. > > Pretty much. The documentation may need updating if that's the case.

[Bug c++/67669] Wrong works fwrite or fread or both

2015-12-21 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67669 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #5 from TC

[Bug c++/69016] In C++14 standard, function with auto as return and arguments returns result with the datatype of first argument only

2015-12-23 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69016 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #3 from TC

[Bug c++/69023] bitset whose name is used in constant-expression rejected

2015-12-23 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69023 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #3 from TC

[Bug libstdc++/69092] New: basic_string constructor and throwing iterators

2015-12-30 Thread rs2740 at gmail dot com
: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- basic_string(ForwardIt, ForwardIt) eventually calls _S_copy_chars(), which is marked _GLIBCXX_NOEXCEPT, so an exception thrown from an iterator operation inside

[Bug c++/68071] Generic lambda variadic argument pack cannot be empty

2015-12-31 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68071 --- Comment #3 from TC --- This looks like a duplicate of https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64095

[Bug c++/69103] New: Misleading diagnostic for invalid constexpr initialization

2015-12-31 Thread rs2740 at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Consider: static int i; static int* temp = &i; static constexpr int *&&r = static_cast(temp) + 1; This correctly doesn't compile,

[Bug libstdc++/69105] New: front_/back_/insert_iterator should use addressof

2015-12-31 Thread rs2740 at gmail dot com
: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Test case: #include #include struct test : std::deque { void operator&() const = delete; }; int main() { test t; std::back_insert_iterator b(t);

gcc-bugs@gcc.gnu.org

2015-12-31 Thread rs2740 at gmail dot com
stdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Test case: #include struct foo { void operator&() const = delete; }; int main() { std::promise p; p.set_value(foo()); } results in: In file included from

[Bug libstdc++/69114] New: A couple allocator-related helpers should use __addressof

2016-01-01 Thread rs2740 at gmail dot com
Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- __use_alloc in and __outermost in take the address of an allocator with &. They should use __addressof instead. (__outermost doesn'

[Bug c++/69131] New: [4.9/5/6 Regression] default constructor of union incorrectly deleted

2016-01-03 Thread rs2740 at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- From http://stackoverflow.com/q/34581372/2756719, repro: struct X { ~X() {} }; union U { X x; ~U() {} }; U u; The default

[Bug c++/69139] New: [4.9/5/6 Regression] deduction failure with trailing return type in function template argument

2016-01-04 Thread rs2740 at gmail dot com
Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Test case (modified from http://stackoverflow.com/q/31229359/2756719): auto get(int) -> int { ret

[Bug libstdc++/69116] [4.9/5/6 Regression] compile error when including valarray

2016-01-05 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69116 --- Comment #2 from TC --- I don't think this has anything to do with `end`. Consider the following code: #include template struct foo { T f(); void g(T); }; template void operator<<(const T&, const foo&) {} struct x : public std::ost

[Bug c++/69208] New: &*this should not be const-qualified

2016-01-09 Thread rs2740 at gmail dot com
t: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Repro: struct A { void f(){ A*&& a = &*this; } }; results in: prog.cc: In member function 'void A::f()': prog.cc:3:24: error: binding 'A* const'

[Bug c++/69215] New: Improve diagnostic for 'for(i : v)'

2016-01-09 Thread rs2740 at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Something like #include int main(){ std::vector v; for(i : v) {} } produces a storm of not-very-enlightening errors on trunk: p

[Bug libstdc++/69287] libstdc++-v3/include/debug/functions.h:297: bad comparison ?

2016-01-14 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69287 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #1 from TC

[Bug c++/69436] Method returning "auto&" fails to resolve "*this" (-std=c++17)

2016-01-22 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69436 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #3 from TC

[Bug c++/69436] Method returning "auto&" fails to resolve "*this" (-std=c++17)

2016-01-22 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69436 --- Comment #4 from TC --- Although this still breaks on trunk GCC on Wandbox: long x; auto& f(auto) { return x; } auto* g(auto) { return &x; } auto r = f(1); auto p = g(1); prog.cc: In instantiation of 'auto& f(auto:1) [with auto:1 = int]': pr

[Bug c++/69448] New: Abbreviated function templates with deduced return type still broken

2016-01-23 Thread rs2740 at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- PR64969 fixed cases where an abbreviated function template returns 'auto' or 'decltype(auto)' (or have a traili

[Bug c++/69449] New: Some invalid fold expressions incorrectly accepted

2016-01-23 Thread rs2740 at gmail dot com
: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Repro: struct A { A(int = 0); A operator+(A) const; }; struct B { B(int = 0); operator int() const; }; template void f(){ (A() + A() + ... + A(Is)); // compiles

[Bug libstdc++/69478] New: [4.9/5/6 Regression] std::copy/std::move broken with trivial move-only types

2016-01-25 Thread rs2740 at gmail dot com
: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Reduced from http://stackoverflow.com/q/35002402/2756719, repro: #include #include class A { public: A() = default

[Bug libstdc++/69478] [4.9/5/6 Regression] std::copy/std::move broken with trivial move-only types

2016-01-25 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69478 --- Comment #1 from TC --- It seems that the static_assert should check _IsMove and use either is_copy_assignable<_Tp> or is_move_assignable<_Tp> depending on its value.

[Bug c++/66350] typename should be forbidden in inhering constructors

2015-06-04 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66350 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #4 from TC

[Bug c++/66548] New: Invalid class member access expression in decltype sometimes accepted

2015-06-15 Thread rs2740 at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- The following code is accepted by GCC 5.1 and 6.0.0 20150615 (experimental), even though it is plainly invalid: struct Meow {}; int

[Bug c++/66548] Invalid class member access expression in decltype sometimes accepted

2015-06-15 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66548 --- Comment #1 from TC --- See also http://stackoverflow.com/q/30856911/2756719

[Bug c++/66990] New: Wrong diagnostics when template being specialized is ambiguous

2015-07-24 Thread rs2740 at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Consider: namespace A { inline namespace B { template struct C; } template struct C; template<> struct C{}; } Lookup for

[Bug c++/66990] Wrong diagnostics when template being specialized is ambiguous

2015-07-24 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66990 TC changed: What|Removed |Added Keywords||diagnostic --- Comment #1 from TC --- I meant, "(w

[Bug c++/67200] New: Copy elision and implicit move in return performed in cases not allowed by standard

2015-08-12 Thread rs2740 at gmail dot com
Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Consider: struct A { A() = default; A(const A&) = delete; A(A&&) = default; }; A f() { A a

[Bug libstdc++/66624] libstdc++ iostream uninitialized data

2015-09-01 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66624 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #5 from TC

[Bug c++/71774] New: Bogus "is protected" error when list-initializing a base class with a defaulted protected constructor and a virtual function

2016-07-05 Thread rs2740 at gmail dot com
oduct: gcc Version: 7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- Reduced from http://stackoverflow.com/q/382138

[Bug c++/69208] &*this should not be const-qualified

2016-08-14 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69208 TC changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|---

[Bug c++/56701] [C++11] The *this* pointer fails to bind to rvalue reference to pointer type

2016-08-14 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56701 --- Comment #7 from TC --- *** Bug 69208 has been marked as a duplicate of this bug. ***

[Bug c++/76262] list-initialization prefers initializer_list over copy constructor

2016-08-15 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=76262 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #1 from TC

[Bug c++/76262] list-initialization prefers initializer_list over copy constructor

2016-08-16 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=76262 --- Comment #3 from TC --- (In reply to Jonathan Wakely from comment #2) > In which case both EDG and Clang get this wrong, as they print "12" I know that Clang 3.7+ implemented DR1467 without 2137 (in which case "12" would be the right output)

[Bug libstdc++/97869] New: defines __cpp_lib_span even when doesn't provide an implementation

2020-11-16 Thread rs2740 at gmail dot com via Gcc-bugs
ormal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- defines __cpp_lib_span if __cplusplus > 201703L and _GLIBCXX_HOSTED, but only provides a definition of std::s

[Bug libstdc++/97935] New: Missing subsumption in iterator category detection

2020-11-21 Thread rs2740 at gmail dot com via Gcc-bugs
: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- In : template requires (!requires { typename _Iter::iterator_category; } && __detail::__cpp17_randacc_iterator<_Iter>)

[Bug c++/99081] New: Misleading -Wmissing-field-initializers warning on out-of-order designated initializers

2021-02-12 Thread rs2740 at gmail dot com via Gcc-bugs
Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- struct A { int a; int b; }; A a { .b = 1, .a = 2}; with g++ -std=c++2a -O3 -Wall -Wextra produces :5:21

[Bug c++/99273] New: List initialization prefers initializer_list a little too strongly

2021-02-25 Thread rs2740 at gmail dot com via Gcc-bugs
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- This is basically bug 64665 but closed back in 2015 - I think incorrectly. Reduced test case: #include struct S { S(int); }; void f(std

[Bug libstdc++/100290] New: join_view::_Iterator::operator++ copies _M_parent->_M_inner when _S_ref_is_glvalue is false

2021-04-27 Thread rs2740 at gmail dot com via Gcc-bugs
MED Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- auto&& __inner_range = [this] () -> decltype(auto) { if constexpr (_S_

[Bug c++/100368] New: Missing guaranteed elision in constexpr evaluation

2021-04-30 Thread rs2740 at gmail dot com via Gcc-bugs
Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- struct S { S() = default; S(const S&) = delete; }; struct array { S s[2]; }; struct PS { constexpr array operator*() const { return {}; } }; stru

[Bug c++/100374] New: Type-constraints of member function templates should not be substituted into during implicit instantiation

2021-05-01 Thread rs2740 at gmail dot com via Gcc-bugs
: UNCONFIRMED Keywords: rejects-valid Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- template concept C = true; template struct Foo { template

[Bug libstdc++/100479] New: range adaptors handle cached iterators incorrectly

2021-05-07 Thread rs2740 at gmail dot com via Gcc-bugs
Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- template struct _CachedPosition<_Range> { private: iterator_t<_Range> _M_iter{}; public: constexpr bool

[Bug c++/100579] New: [coroutines] Poor codegen using an optional-like type with co_await

2021-05-12 Thread rs2740 at gmail dot com via Gcc-bugs
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- #ifdef __clang__ #include namespace stdx = std::experimental; #else #include namespace stdx = std; #endif struct O { ~O() {} struct

[Bug c++/100592] New: Bogus "qualifiers cannot be applied" error with reference type produced by dependent alias template

2021-05-13 Thread rs2740 at gmail dot com via Gcc-bugs
Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- template struct meta { template using if_c = T; }; template<> struct met

[Bug libstdc++/100631] ranges::elements_view:: _Sentinel is missing __distance_from() that can access _M_current of _Iterator

2021-05-17 Thread rs2740 at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100631 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #4 from TC

[Bug c++/100708] New: dynamic_cast can convert xvalue to lvalue

2021-05-20 Thread rs2740 at gmail dot com via Gcc-bugs
++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- GCC accepts struct A { virtual ~A() {}; }; struct B : A {} b; void g () { dynamic_cast(static_cast(b)); } [expr.dynamic.cast]/2 says that for dynamic_cast(v): If T is an

[Bug libstdc++/100768] New: Range iterator operations should be function objects

2021-05-26 Thread rs2740 at gmail dot com via Gcc-bugs
Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- They are currently implemented as plain function templates, which don't meet the requirements in http://eel.is/c++draft/range.iter.ops.general#2

[Bug libstdc++/100823] New: Special member functions of common_iterator should be conditionally trivial

2021-05-28 Thread rs2740 at gmail dot com via Gcc-bugs
: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: rs2740 at gmail dot com Target Milestone: --- At least as a QoI matter, the special member functions of common_iterator should be trivial when the corresponding special

[Bug c++/100825] function signature constraints are not a part of mangled name

2021-06-02 Thread rs2740 at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100825 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #7 from TC

[Bug c++/54835] [C++11][DR 1518] Explicit default constructors not respected during copy-list-initialization

2021-06-06 Thread rs2740 at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54835 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #21 from TC

<    1   2   3   >