[Bug libstdc++/80676] [DR 2995] basic_stringbuf does not use initial capacity of SSO string

2018-12-12 Thread redi at gcc dot gnu.org
|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org --- Comment #4 from Jonathan Wakely --- The C++2a draft now says: "It is implementation-defined whether the sequence pointers (eback(), gptr(), egptr(), pbase(), pptr(), epptr()) are initialized to null pointers."

[Bug libstdc++/88466] [C++17] Support std::hardware_destructive_interference_size and std:: hardware_constructive_interference_size

2018-12-12 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88466 --- Comment #5 from Jonathan Wakely --- (In reply to Duarte from comment #2) > One option could be to just use whatever values linux uses :) The linux kernel allows the cache line sizes to be set at boot (for some h/w) which doesn't really map

[Bug libstdc++/80762] is_constructible gives hard error with clang

2018-12-12 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80762 --- Comment #3 from Jonathan Wakely --- Fixed on trunk for now.

[Bug libstdc++/88466] [C++17] Support std::hardware_destructive_interference_size and std:: hardware_constructive_interference_size

2018-12-12 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88466 --- Comment #3 from Jonathan Wakely --- (In reply to Duarte from comment #0) > It seems, however, that neither std::hardware_destructive_interference_size > nor std::hardware_constructive_interference_size have been included in > libstdc++. As

[Bug libstdc++/71044] Optimize std::filesystem implementation

2018-12-12 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71044 --- Comment #4 from Jonathan Wakely --- Author: redi Date: Wed Dec 12 16:13:49 2018 New Revision: 267057 URL: https://gcc.gnu.org/viewcvs?rev=267057=gcc=rev Log: Overload std::distance and std::advance for path::iterator Although

[Bug libstdc++/80762] is_constructible gives hard error with clang

2018-12-12 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80762 --- Comment #2 from Jonathan Wakely --- Author: redi Date: Wed Dec 12 16:13:43 2018 New Revision: 267056 URL: https://gcc.gnu.org/viewcvs?rev=267056=gcc=rev Log: PR libstdc++/80762 avoid ambiguous __constructible_from Ensure we don't try to

[Bug c++/88458] Conditional expression where the second and third operand are int and nullptr treated as ill-formed

2018-12-12 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88458 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug c/81665] Please introduce flags attribute for enums which will mimic one from C#

2018-12-12 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81665 --- Comment #3 from Jonathan Wakely --- (In reply to Daniel Fruzynski from comment #0) > - to eliminate above error, one has to define custom | operator for enum > type. However when it is not marked as a constexpr, it causes another >

[Bug c++/87603] [C++17] noexcept isn't special cased for constant expressions anymore

2018-12-11 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87603 Jonathan Wakely changed: What|Removed |Added CC||ldionne.2 at gmail dot com ---

[Bug c++/88453] GCC pretends that constexpr default-constructible type is nothrow constructible

2018-12-11 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88453 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|---

[Bug c++/86049] Array bindings are not const when initializer is

2018-12-11 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86049 --- Comment #4 from Jonathan Wakely --- Richard, do you know if there's an issue for this yet?

[Bug c++/87951] GCC warns about reaching end of non-void function when all switch is completely handled

2018-12-11 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951 --- Comment #16 from Jonathan Wakely --- (In reply to Martin Sebor from comment #14) > This is a duplicate of bug 87950, with most of the same discussion. > > *** This bug has been marked as a duplicate of bug 87950 *** I think I need to add

[Bug c++/87951] GCC warns about reaching end of non-void function when all switch is completely handled

2018-12-10 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951 --- Comment #12 from Jonathan Wakely --- It's not a useless warning. If I call your function from comment 7 like this, I get undefined behaviour: CoverMyBases( Enum{2} ); Your switch is undefined for this code. That's what GCC is warning you

[Bug libstdc++/88290] [9 regression] 23_containers/deque/erasure.cc fails after r266672

2018-12-10 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88290 Jonathan Wakely changed: What|Removed |Added Component|testsuite |libstdc++ --- Comment #3 from

[Bug libstdc++/88421] compat C headers break building GCC with GCC

2018-12-10 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88421 --- Comment #6 from Jonathan Wakely --- (In reply to coypu from comment #1) > suggested change: put #include_next outside of include guards? We did something similar for PR 69581

[Bug c++/88413] g++ mangles names involving unresolved names in function argument template parameters differently from the ABI standard.

2018-12-10 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88413 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug c++/86228] ordered comparison between pointer and zero

2018-12-10 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86228 --- Comment #3 from Jonathan Wakely --- (In reply to eracpp from comment #2) > This bug was observed in the following example: > > https://gcc.godbolt.org/z/p1VreP > > #include > #include > > int main() > { > std::array arr; > > //

[Bug c++/87951] GCC warns about reaching end of non-void function when all switch is completely handled

2018-12-10 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951 --- Comment #10 from Jonathan Wakely --- No. They're not "less strict", but they have a fixed underlying type. For any enumeration type with a fixed underlying type (whether "enum class" or just "enum") the validvalues of the type are all the

[Bug libstdc++/87787] [9 Regression][UBSAN] runtime error: null pointer passed as argument 2, which is declared to never be null

2018-12-06 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87787 --- Comment #9 from Jonathan Wakely --- Not yet, sorry.

[Bug c++/88388] GCC falsely determines string literal to be unused

2018-12-06 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88388 --- Comment #2 from Jonathan Wakely --- Bisection suggests this was fixed on trunk by r259051 for PR 85113. The backport to the gcc-7-branch was r259053.

[Bug c++/88388] GCC falsely determines string literal to be unused

2018-12-06 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88388 Jonathan Wakely changed: What|Removed |Added Known to work||7.4.0 Known to fail|

[Bug c++/52869] [DR 1207] "this" not being allowed in noexcept clauses

2018-12-05 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52869 --- Comment #12 from Jonathan Wakely --- The exception specification seems to be processed too early, before the other class members are in scope. This slight variation of comment 5 still fails on trunk: struct S { void g()

[Bug c++/88368] Improper ``use of deleted function''

2018-12-05 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88368 --- Comment #3 from Jonathan Wakely --- Yes, 4.9 accepts it, but so does 5.5 which contains r209907

[Bug c/88367] [9 Regression] -fno-delete-null-pointer-checks doesn't work properly

2018-12-05 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88367 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |WAITING Last reconfirmed|

[Bug c++/88358] variable template definition taken as function template declaration with implicit typename

2018-12-04 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88358 --- Comment #2 from Jonathan Wakely --- (In reply to Nicolas Lesser from comment #0) > It's also a regression I think in a way Yes, this started to be accepted (for c++2a mode only) with Marek's r266710.

[Bug target/88360] see readme.txt for full description

2018-12-04 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88360 Jonathan Wakely changed: What|Removed |Added Keywords||ice-on-valid-code Target|

[Bug libstdc++/88341] [9 Regression] taking norm() of complex variable fails to compile with -std=c++11

2018-12-04 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88341 Jonathan Wakely changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug c/88354] Please warn on the use of a va_list argument in *printf functions instead of v*printf

2018-12-04 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88354 Jonathan Wakely changed: What|Removed |Added Keywords||diagnostic

[Bug libstdc++/88341] [9 Regression] taking norm() of complex variable fails to compile with -std=c++11

2018-12-04 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88341 --- Comment #4 from Jonathan Wakely --- make check RUNTESTFLAGS=--target_board=unix/-std=gnu++11

[Bug libstdc++/82716] struct/class vs. tuple_element/tuple_size

2018-12-03 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82716 --- Comment #4 from Jonathan Wakely --- (In reply to Marc Mutz from comment #0) > Here's a stripped-down example: https://godbolt.org/g/sUZxAQ > Works with -stdlib=libc++: https://godbolt.org/g/bW4u1u But not if you use 'struct' instead of

[Bug libstdc++/88341] [9 Regression] taking norm() of complex variable fails to compile with -std=c++11

2018-12-03 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88341 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed|

[Bug c++/88334] Implement P0482R6, C++20 char8_t.

2018-12-03 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88334 --- Comment #1 from Jonathan Wakely --- It needs review.

[Bug c++/88336] Implement P0595R2, C++20 std::is_constant_evaluated (compiler magic library tool).

2018-12-03 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88336 --- Comment #1 from Jonathan Wakely --- __builtin_constant_evaluated is already implemented, it just needs to be provided with the name std::is_constant_evaluated() (and possibly adjusted for the changes in the R2 paper).

[Bug c++/88320] GCC suggests variables that don't exist yet

2018-12-03 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88320 --- Comment #3 from Jonathan Wakely --- (In reply to Jonny Grant from comment #0) > Suggestion on line 5 of a variable which is acutally the return value, and > doesn't exist yet. Better to only suggest alternative as variables that > exist

[Bug c++/88320] GCC suggests variables that don't exist yet

2018-12-03 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88320 --- Comment #2 from Jonathan Wakely --- (In reply to Jonny Grant from comment #1) > Created attachment 45144 [details] > test case Reproduced here, as it's tiny and more convenient in a comment than as an attachment: // g++ -Wall -O2 -o

[Bug libstdc++/88305] Implement P0019R8, C++20 std::atomic_ref

2018-12-03 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88305 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug c++/88292] Static initialization problem with thread_local and templates

2018-12-01 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88292 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |WAITING Last reconfirmed|

[Bug libstdc++/88264] Support glibc-style tunables for

2018-11-29 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88264 --- Comment #1 from Jonathan Wakely --- I forgot to list the growth factor for pool resource too (currently hardcoded to 2 in __pool_resource::_Pool::replenish())

[Bug libstdc++/88264] New: Support glibc-style tunables for

2018-11-29 Thread redi at gcc dot gnu.org
++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org Target Milestone: --- "Tunables are a feature in the GNU C Library that allows application authors and distribution maintainers to alter the runtime library behavior to match their workload.&qu

[Bug libstdc++/88125] Erroneous duplicate "basic_stringbuf" symbol entry in libstdc++ gnu.ver file.

2018-11-29 Thread redi at gcc dot gnu.org
|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org --- Comment #3 from Jonathan Wakely --- Yes, I think we can just remove the 3.4.6 pattern. It's not doing anything. My checker script finds this issue: $ echo _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv | ../../scripts/symverck.py

[Bug libstdc++/88119] std::alignment_of returns wrong value (__alignof instead of alignof).

2018-11-29 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88119 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug libstdc++/88119] std::alignment_of returns wrong value (__alignof instead of alignof).

2018-11-29 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88119 --- Comment #1 from Jonathan Wakely --- Author: redi Date: Thu Nov 29 12:32:57 2018 New Revision: 266613 URL: https://gcc.gnu.org/viewcvs?rev=266613=gcc=rev Log: PR libstdc++/88119 use alignof in std::alignment_of, not __alignof__ Now that

[Bug c++/88258] [9 Regression] Infinite loop emitting diagnostics in the C++ front-end

2018-11-29 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88258 Jonathan Wakely changed: What|Removed |Added Keywords|openmp | Status|UNCONFIRMED

[Bug c++/88258] [9 Regression] Infinite loop emitting diagnostics in the C++ front-end

2018-11-29 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88258 --- Comment #1 from Jonathan Wakely --- Created attachment 45120 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45120=edit preprocessed source to reproduce diagnostic loop Confirmed, here is a reproducer I found the other day.

[Bug libstdc++/86910] std::filesystem::create_directories doesn't set error code or throw while violating postcondition.

2018-11-28 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86910 --- Comment #9 from Jonathan Wakely --- Author: redi Date: Thu Nov 29 00:39:37 2018 New Revision: 266598 URL: https://gcc.gnu.org/viewcvs?rev=266598=gcc=rev Log: PR libstdc++/86910 fix filesystem::create_directories Implement the proposed

[Bug libstdc++/87846] std::filesystem::create_directories with a path with a trailing slash does not create any directory

2018-11-28 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87846 --- Comment #2 from Jonathan Wakely --- Author: redi Date: Thu Nov 29 00:39:37 2018 New Revision: 266598 URL: https://gcc.gnu.org/viewcvs?rev=266598=gcc=rev Log: PR libstdc++/86910 fix filesystem::create_directories Implement the proposed

[Bug libstdc++/87846] std::filesystem::create_directories with a path with a trailing slash does not create any directory

2018-11-28 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87846 --- Comment #1 from Jonathan Wakely --- The implementation of create_directories worked for the Filesystem TS but I didn't update it to cope with the different C++17 semantics for a trailing slash. The empty filename at the end of the path

[Bug libstdc++/87846] std::filesystem::create_directories with a path with a trailing slash does not create any directory

2018-11-28 Thread redi at gcc dot gnu.org
||2018-11-28 Assignee|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org Target Milestone|--- |8.3 Ever confirmed|0 |1

[Bug libstdc++/83511] Missing default argument for basic_string_view::substr

2018-11-28 Thread redi at gcc dot gnu.org
|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org Target Milestone|--- |8.3

[Bug libstdc++/83511] Missing default argument for basic_string_view::substr

2018-11-28 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83511 --- Comment #2 from Jonathan Wakely --- Fixed on trunk so far.

[Bug libstdc++/83306] filesystem_error is not nothrow copyable

2018-11-28 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83306 --- Comment #4 from Jonathan Wakely --- Author: redi Date: Wed Nov 28 17:07:22 2018 New Revision: 266569 URL: https://gcc.gnu.org/viewcvs?rev=266569=gcc=rev Log: Fix undefined references in libstdc++fs.a The recent patch for PR 83306 removed

[Bug libstdc++/83511] Missing default argument for basic_string_view::substr

2018-11-28 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83511 --- Comment #1 from Jonathan Wakely --- Author: redi Date: Wed Nov 28 16:53:35 2018 New Revision: 266568 URL: https://gcc.gnu.org/viewcvs?rev=266568=gcc=rev Log: PR libstdc++/83511 add default argument to basic_string_view::substr PR

[Bug libstdc++/86910] std::filesystem::create_directories doesn't set error code or throw while violating postcondition.

2018-11-28 Thread redi at gcc dot gnu.org
|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org Target Milestone|--- |8.3 --- Comment #8 from Jonathan Wakely --- The proposed new direction is: In case mkdir() fails because p already exists, if p resolves to an existing directory, no error is reported, otherwise

[Bug libstdc++/86756] Don't define __cpp_lib_filesystem unless --enable-libstdcxx-filesystem-ts

2018-11-28 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86756 --- Comment #2 from Jonathan Wakely --- Thinking further about this, I think should always be installed, but it should only define the portable parts. The enumeration types, filesystem::path, filesystem::filesystem_error and

[Bug libstdc++/64132] [7/8/9 Regression] FAIL: 22_locale/numpunct/members/char/3.cc execution test

2018-11-28 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64132 Jonathan Wakely changed: What|Removed |Added Status|WAITING |NEW --- Comment #13 from Jonathan

[Bug libstdc++/83306] filesystem_error is not nothrow copyable

2018-11-28 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83306 Jonathan Wakely changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/83306] filesystem_error is not nothrow copyable

2018-11-28 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83306 --- Comment #3 from Jonathan Wakely --- Author: redi Date: Wed Nov 28 15:27:11 2018 New Revision: 266565 URL: https://gcc.gnu.org/viewcvs?rev=266565=gcc=rev Log: PR libstdc++/83306 make filesystem_error no-throw copyable The class API provides

[Bug c++/88245] New: Wrong location for "explicitly defaulted here"

2018-11-28 Thread redi at gcc dot gnu.org
ty: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org Target Milestone: --- struct X { ~X(); }; X::~X() = default; X::~X() = default; With all versions this says: expl.cc:8:1: error: definition of explicitly

[Bug libstdc++/88199] [7/8 Regression] memory leak on unordered container move assignment

2018-11-28 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88199 Jonathan Wakely changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/67843] experimental/filesystem/iterators/directory_iterator.cc fails on armv5t

2018-11-27 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67843 Jonathan Wakely changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/42734] trivial use of std::thread fails with "pure virtual method called"

2018-11-27 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42734 --- Comment #50 from Jonathan Wakely --- Author: redi Date: Tue Nov 27 23:25:56 2018 New Revision: 266533 URL: https://gcc.gnu.org/viewcvs?rev=266533=gcc=rev Log: PR libstdc++/67843 set shared_ptr lock policy at build-time This resolves a

[Bug libstdc++/67843] experimental/filesystem/iterators/directory_iterator.cc fails on armv5t

2018-11-27 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67843 --- Comment #11 from Jonathan Wakely --- Author: redi Date: Tue Nov 27 23:25:56 2018 New Revision: 266533 URL: https://gcc.gnu.org/viewcvs?rev=266533=gcc=rev Log: PR libstdc++/67843 set shared_ptr lock policy at build-time This resolves a

[Bug c++/88221] Only restricted set of balanced token sequences allowed for attributes

2018-11-27 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88221 Jonathan Wakely changed: What|Removed |Added Keywords||rejects-valid

[Bug c++/88218] Builtin for detecting that throw X will definitely cause std::terminate

2018-11-27 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88218 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug target/65146] alignment of _Atomic structure member is not correct

2018-11-27 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65146 --- Comment #11 from Jonathan Wakely --- (In reply to Jonathan Wakely from comment #9) > Did this ever get taken to the ABI group? I've done so now.

[Bug libstdc++/71044] Optimize std::filesystem implementation

2018-11-26 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71044 Jonathan Wakely changed: What|Removed |Added Target Milestone|--- |9.0

[Bug libstdc++/86756] Don't define __cpp_lib_filesystem unless --enable-libstdcxx-filesystem-ts

2018-11-26 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86756 Jonathan Wakely changed: What|Removed |Added Target Milestone|--- |9.0

[Bug c++/88210] Add fix-it hint for explicit template instantiations

2018-11-26 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88210 --- Comment #1 from Jonathan Wakely --- Even without a fix-it, "has not been declared" would be more helpful than "is not a template". Clang is more informative (although wrong about the instantiation needing to occur in namespace x):

[Bug c++/88210] New: Add fix-it hint for explicit template instantiations

2018-11-26 Thread redi at gcc dot gnu.org
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org CC: dmalcolm at gcc dot gnu.org Target Milestone: --- namespace x { template struct blah { }; } extern template class blah; template class

[Bug middle-end/88175] Showing header file instead of source code line for uninitialized variable

2018-11-26 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88175 Jonathan Wakely changed: What|Removed |Added Attachment #45077|0 |1 is obsolete|

[Bug middle-end/88175] Showing header file instead of source code line for uninitialized variable

2018-11-26 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88175 --- Comment #11 from Jonathan Wakely --- (In reply to Jonny Grant from comment #8) > Do you agree this warning output should be changed to clarify? Yes, there's plenty of room to improve it. > I understand your reply about it being non-POD

[Bug libstdc++/88199] [7/8/9 Regression] memory leak on unordered container move assignment

2018-11-26 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88199 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed|

[Bug libstdc++/88199] New: [7/8/9 Regression] memory leak on unordered container move assignment

2018-11-26 Thread redi at gcc dot gnu.org
Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org Target Milestone: --- Since allocator propagation was implemented in GCC 4.9, move assignment with non-equal allocators has leaked the original

[Bug libstdc++/88151] Define iterator_traits::* for output iterators to actual values when possible (rather than to void)

2018-11-26 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88151 --- Comment #2 from Jonathan Wakely --- I'm not convinced it's useful though.

[Bug c++/87947] Symbol Does Not Appear in Object File

2018-11-26 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87947 --- Comment #4 from Jonathan Wakely --- That answer is about whether it's "safe", and explains that the -std options do not create ABI incompatibilities. The question is also stated as (emphasis in the original): > For simplicity, let's assume

[Bug target/88195] misleading error message for unsupported builtin

2018-11-26 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88195 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug c++/79996] spurious -Wreturn-type on a function that calls a noreturn function

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79996 --- Comment #7 from Jonathan Wakely --- (In reply to Eric Gallager from comment #6) > Well, I guess it's probably too late to go back on it now, but I thought > warnings enabled by default weren't supposed to have any false positives, > and this

[Bug middle-end/88175] Showing header file instead of source code line for uninitialized variable

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88175 --- Comment #7 from Jonathan Wakely --- (In reply to Andrew Pinski from comment #3) > > string dummy; // for some reason this is needed to force the error to be > > shown as header.h:8:16: > > causes the struct to be a non-POD and the copy

[Bug middle-end/88175] Showing header file instead of source code line for uninitialized variable

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88175 --- Comment #6 from Jonathan Wakely --- i.e. this would be wrong, because there is not 'copy' in test(info_t). > So would be better if it was as follows: > === > > $ g++ -O2 -Werror=uninitialized -o

[Bug middle-end/88175] Showing header file instead of source code line for uninitialized variable

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88175 --- Comment #5 from Jonathan Wakely --- (In reply to Jonny Grant from comment #4) > Also, it is "copy" that is unused uninitialized? (not "temp") Yes, in the test(info_t) function, which is what GCC says: header.h: In function ‘void

[Bug libstdc++/85930] [8/9 Regression] Misaligned reference created in shared_ptr_base.h with -fno-rtti

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85930 Jonathan Wakely changed: What|Removed |Added CC||semi1 at posteo dot de --- Comment

[Bug libstdc++/88177] Clang detects undefined behavior in shared_ptr_base.h

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88177 --- Comment #2 from Jonathan Wakely --- Oops I marked it as a dup of the wrong bug number. *** This bug has been marked as a duplicate of bug 85930 ***

[Bug libstdc++/87520] [8 Regression] ODR violations in std::make_shared when mixing -fno-rtti and -frtti

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87520 Jonathan Wakely changed: What|Removed |Added CC||semi1 at posteo dot de --- Comment #9

[Bug libstdc++/88177] Clang detects undefined behavior in shared_ptr_base.h

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88177 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|---

[Bug c++/86943] [7/8/9 Regression] Wrong code when converting stateless generic lambda to function pointer

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86943 --- Comment #9 from Jonathan Wakely --- See the glambda example in http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3649.html Core 1937 seems relevant here.

[Bug c++/86943] [7/8/9 Regression] Wrong code when converting stateless generic lambda to function pointer

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86943 --- Comment #8 from Jonathan Wakely --- The non-normative note in [expr.prim.lambda.closure] p8 does seem to support GCC's semantics. It suggests the returned function pointer is to an invoker function not the operator() itself. The {}

[Bug c++/85861] g++ -Wconversion misses int to size_t

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85861 --- Comment #11 from Jonathan Wakely --- My guess is that we don't want to warn about conversions that are well-defined and the original value can be obtained by a round-trip. Converting a size_t to an int is lossy, i.e. converting back to

[Bug c++/86943] [7/8/9 Regression] Wrong code when converting stateless generic lambda to function pointer

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86943 --- Comment #6 from Jonathan Wakely --- I might be wrong about the C++14 rules ... maybe the {} initializer should directly initialize the parameter, without any move. I don't know if we need to fix the incorrect argument to the move

[Bug c++/86943] [7/8/9 Regression] Wrong code when converting stateless generic lambda to function pointer

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86943 Jonathan Wakely changed: What|Removed |Added Summary|[8/9 Regression] Wrong code |[7/8/9 Regression] Wrong

[Bug c++/86943] [8/9 Regression] Wrong code when converting stateless generic lambda to function pointer

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86943 --- Comment #4 from Jonathan Wakely --- I haven't analyzed the code to say what it should do, but EDG agrees with Clang.

[Bug libstdc++/65229] pretty-printer exception on std::bitset<0>

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65229 Jonathan Wakely changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---

[Bug libstdc++/65229] pretty-printer exception on std::bitset<0>

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65229 --- Comment #2 from Jonathan Wakely --- Author: redi Date: Fri Nov 23 16:12:03 2018 New Revision: 266409 URL: https://gcc.gnu.org/viewcvs?rev=266409=gcc=rev Log: PR libstdc++/65229 fix pretty printer for std::bitset<0> 2018-11-23 Martin Sebor

[Bug c++/88166] Inconsistent placement of cv-quals and ptr-declarator in debuginfo

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88166 --- Comment #5 from Jonathan Wakely --- Author: redi Date: Fri Nov 23 15:48:56 2018 New Revision: 266408 URL: https://gcc.gnu.org/viewcvs?rev=266408=gcc=rev Log: PR libstdc++/87308 adjust regex used in std::any pretty printer The pretty

[Bug libstdc++/87308] pretty printer for std::any fails with: Python Exception Unknown manager function in std::any

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87308 --- Comment #2 from Jonathan Wakely --- Author: redi Date: Fri Nov 23 15:48:56 2018 New Revision: 266408 URL: https://gcc.gnu.org/viewcvs?rev=266408=gcc=rev Log: PR libstdc++/87308 adjust regex used in std::any pretty printer The pretty

[Bug libstdc++/88170] New: pretty printer FAILs

2018-11-23 Thread redi at gcc dot gnu.org
++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org Target Milestone: --- type = std::unique_ptr, std::allocator >>[]>>[99]>^M got: type = std::unique_ptr, std::allocator >>[]>>[99]>^M FAIL: libstdc++-prettyprinters/80276.cc whatis p4 T

[Bug c++/88166] Inconsistent placement of cv-quals and ptr-declarator in debuginfo

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88166 Jonathan Wakely changed: What|Removed |Added Resolution|INVALID |FIXED --- Comment #4 from Jonathan

[Bug c++/88166] Inconsistent placement of cv-quals and ptr-declarator in debuginfo

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88166 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug libstdc++/87308] pretty printer for std::any fails with: Python Exception Unknown manager function in std::any

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87308 --- Comment #1 from Jonathan Wakely --- (In reply to Jeff Garrett from comment #0) > Note that both a1 and a2 are interpreted as holding type main::{lambda()#2}, > but a1 actually holds main::{lambda()#1}. I can fix the regex to work for

[Bug c++/88166] Inconsistent placement of cv-quals and ptr-declarator in debuginfo

2018-11-23 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88166 --- Comment #1 from Jonathan Wakely --- Oops, I simplified the testcase, but didn't update it in bugzilla before submitting the form. The output above corresponds to this code: struct any { struct Arg { char c; }; template struct

[Bug c++/88166] New: Inconsistent placement of cv-quals and ptr-declarator in debuginfo

2018-11-23 Thread redi at gcc dot gnu.org
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org Target Milestone: --- Given: struct any { enum Op { E }; struct Arg { char c; }; template struct Manager { static void manage(Op, const

  1   2   3   4   5   6   7   8   9   10   >