[Bug libstdc++/103726] --disable-hosted-libstdcxx (freestanding C++) does not provide as what standard requires

2025-04-23 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103726 --- Comment #20 from Jiang An --- (In reply to Jonathan Wakely from comment #11) > I already reported https://cplusplus.github.io/LWG/issue3653 for the > std::hash use in . Removing exceptions, typeinfo and coroutines > is unnecessary and irrele

[Bug c++/119561] New: GCC hasn't completely forbidden user-declared specializations of std::initializer_list

2025-03-31 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119561 Bug ID: 119561 Summary: GCC hasn't completely forbidden user-declared specializations of std::initializer_list Product: gcc Version: 15.0 Status: UNCONFIRMED K

[Bug libstdc++/119486] New: CTAD for std::pair from function lvalue results in hard error since C++20

2025-03-26 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119486 Bug ID: 119486 Summary: CTAD for std::pair from function lvalue results in hard error since C++20 Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: reje

[Bug libstdc++/119075] New: LWG4140 seems incompletely implemented

2025-03-01 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119075 Bug ID: 119075 Summary: LWG4140 seems incompletely implemented Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: rejects-valid Severity: normal Priority

[Bug c++/117787] [C++26] P3247R2 - Deprecating the notion of trivial types

2025-03-01 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117787 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #2 from Jian

[Bug libstdc++/118434] std::visit should be updated to handle immediate functions

2025-01-12 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118434 --- Comment #1 from Jiang An --- Corresponding libc++ issue: https://github.com/llvm/llvm-project/issues/118560

[Bug libstdc++/118434] New: std::visit should be updated to handle immediate functions

2025-01-12 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118434 Bug ID: 118434 Summary: std::visit should be updated to handle immediate functions Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: rejects-valid

[Bug c++/118354] New: Address-of result of a function template specialization may be treated as the function itself

2025-01-08 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118354 Bug ID: 118354 Summary: Address-of result of a function template specialization may be treated as the function itself Product: gcc Version: 15.0 Status: UNCONFIRMED

[Bug c++/117727] __builtin_bit_cast with target type nullptr_t unimplemented

2024-11-21 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117727 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #7 from Jian

[Bug libstdc++/117552] New: ranges::(stable_)sort fail to accept C++20-only random access ranges

2024-11-13 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117552 Bug ID: 117552 Summary: ranges::(stable_)sort fail to accept C++20-only random access ranges Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: rejects-v

[Bug c++/117280] Accessing a reference member of a volatile-qualified class glvalue is misinterpreted as volatile read

2024-11-11 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117280 --- Comment #2 from Jiang An --- https://cplusplus.github.io/CWG/issues/2957.html Let's suspend this. If it's determined that evaluating a reference member is an access, GCC's current behavior should be correct.

[Bug c++/117280] Accessing a reference member of a volatile-qualified class glvalue is misinterpreted as volatile read

2024-10-24 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117280 --- Comment #1 from Jiang An --- I've realize that the original example seems invalid because the temporary object shouldn't be usable in constant evaluations (as it's of a volatile type due to reference binding). But this one (accidently?) has

[Bug c++/117280] New: Accessing a reference member of a volatile-qualified class glvalue is misinterpreted as volatile read

2024-10-23 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117280 Bug ID: 117280 Summary: Accessing a reference member of a volatile-qualified class glvalue is misinterpreted as volatile read Product: gcc Version: 15.0 Status: UNCONFIR

[Bug c++/116976] New: vector::iterator fails to meet Cpp17InputIterator requirements

2024-10-04 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116976 Bug ID: 116976 Summary: vector::iterator fails to meet Cpp17InputIterator requirements Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: rejects-valid

[Bug libstdc++/116529] Construction of unique_ptr with reference type is rejected because of auto_ptr constructor

2024-09-03 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116529 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #6 from Jian

[Bug libstdc++/114298] std::lazy_split_view constructor is currently not explicit

2024-08-28 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114298 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #3 from Jian

[Bug libstdc++/116473] std::ranges::to vs constexpr

2024-08-27 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116473 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug libstdc++/116342] The compiler doesn't respect customised strong_order/weak_order for floating point types.

2024-08-13 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116342 --- Comment #5 from Jiang An --- (In reply to Zhao Dai from comment #4) > > IIUC GCC and libstdc++ are doing the right thing - you're just not allowed > > to customize comparison for float. > > I don't know if C++ Standard says `strong/weak_or

[Bug libstdc++/116342] The compiler doesn't respect customised strong_order/weak_order for floating point types.

2024-08-12 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116342 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #3 from Jian

[Bug c++/116172] New: Uses of global main should also forbidden in freestanding modes

2024-08-01 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116172 Bug ID: 116172 Summary: Uses of global main should also forbidden in freestanding modes Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: accepts-invali

[Bug c++/116077] New: GCC hasn't implemented CWG DR 2387

2024-07-24 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116077 Bug ID: 116077 Summary: GCC hasn't implemented CWG DR 2387 Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3

[Bug libstdc++/115939] Cannot unambiguously compare iterators in std::unordered_map with mapped type std::expected>

2024-07-24 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115939 --- Comment #7 from Jiang An --- (In reply to Jiang An from comment #6) > I found that we may also need to add some operator- overloads > (https://godbolt.org/z/jTTcYhxMc). > > All standard library implementations are currently broken. Oops, i

[Bug libstdc++/115939] Cannot unambiguously compare iterators in std::unordered_map with mapped type std::expected>

2024-07-23 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115939 --- Comment #6 from Jiang An --- I found that we may also need to add some operator- overloads (https://godbolt.org/z/jTTcYhxMc). All standard library implementations are currently broken. ``` #include #include #include #include struct a

[Bug libstdc++/115939] Cannot unambiguously compare iterators in std::unordered_map with mapped type std::expected>

2024-07-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115939 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #4 from Jian

[Bug c++/115963] P3144R2 is not yet completely implemented with a nullptr constant

2024-07-17 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115963 --- Comment #2 from Jiang An --- > The question becomes is that an oversight of P3144R2 or not and should a null > pointer > constant be valid always since that was never undefined or even had a chance > of being > undefined. CWG2392 (https:/

[Bug c++/115963] New: P3144R2 is not yet completely implemented

2024-07-16 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115963 Bug ID: 115963 Summary: P3144R2 is not yet completely implemented Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: accepts-invalid Severity: normal Pri

[Bug c++/115592] New: CWG DR 2823 seems incompletely implemented

2024-06-22 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115592 Bug ID: 115592 Summary: CWG DR 2823 seems incompletely implemented Product: gcc Version: 14.0 Status: UNCONFIRMED Keywords: accepts-invalid Severity: normal Pr

[Bug libstdc++/115522] [13/14/15 Regression] std::to_array no longer works for struct which is trivial but not default constructible

2024-06-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115522 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #7 from Jian

[Bug libstdc++/115514] Nonconforming reverse_iterator::operator->

2024-06-18 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115514 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #3 from Jian

[Bug libstdc++/115444] std::copy_n generates more code than needed

2024-06-12 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115444 --- Comment #2 from Jiang An --- Oh, UB seems still introduced by [iterator.requirements.general]/12 (https://eel.is/c++draft/iterator.requirements.general#12). > The result of the application of library functions to invalid ranges is > undefin

[Bug libstdc++/115444] std::copy_n generates more code than needed

2024-06-12 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115444 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug libstdc++/115099] compilation error: format thread::id

2024-05-16 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115099 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug libstdc++/115059] Constraints/Mandates on the comparison operators of std::optional and std::variant are overly strict

2024-05-13 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115059 --- Comment #2 from Jiang An --- (In reply to Jonathan Wakely from comment #1) > I don't want to change anything in libstdc++ here. Either > std::is_convertible should be sufficient to check "convertible to" > constraints, or "convertible to" sh

[Bug libstdc++/115059] New: Constraints/Mandates on the comparison operators of std::optional and std::variant are overly strict

2024-05-12 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115059 Bug ID: 115059 Summary: Constraints/Mandates on the comparison operators of std::optional and std::variant are overly strict Product: gcc Version: 15.0 Status: UNCONFIRM

[Bug c++/114388] Behavioral change of typeid on xvalues since GCC 9

2024-04-29 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114388 --- Comment #10 from Jiang An --- Broken down into two smaller examples: https://godbolt.org/z/YhK7PqE6s ``` #include #include int main() { struct B { B() {} virtual ~B() { std::puts("C++11"); } }; struct C { B b; }; typeid

[Bug libstdc++/114891] New: Unconditional use of std::is_pointer_interconvertible_base_of_v in makes the header unusable with Clang 18

2024-04-29 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114891 Bug ID: 114891 Summary: Unconditional use of std::is_pointer_interconvertible_base_of_v in makes the header unusable with Clang 18 Product: gcc Version: 15.0

[Bug libstdc++/114866] & out_ptr in freestanding

2024-04-28 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114866 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug c++/114844] New: A trivial but noexcept(false) destructor is incorrectly considered non-throwing

2024-04-24 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114844 Bug ID: 114844 Summary: A trivial but noexcept(false) destructor is incorrectly considered non-throwing Product: gcc Version: 14.0 Status: UNCONFIRMED Keywords

[Bug libstdc++/114817] Wrong codegen for std::copy of "trivially copyable but not trivially assignable" type

2024-04-23 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114817 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #2 from Jian

[Bug libstdc++/89855] Inconsistent global namespace overload sets from #include

2024-03-28 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89855 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #12 from Jian

[Bug libstdc++/114477] The user-defined constructor of filter_view::iterator is not fully compliant with the standard

2024-03-27 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114477 --- Comment #5 from Jiang An --- (In reply to 康桓瑋 from comment #0) > Since P3059R0 is closed (although I feel bad about this) BTW, now I think this is somehow unfortunate. P3059 behaved like a follow-up paper of P2711 IMO. Both papers effective

[Bug libstdc++/114477] The user-defined constructor of filter_view::iterator is not fully compliant with the standard

2024-03-26 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114477 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug libstdc++/114417] std::experimental::simd is not a POD (by ABI definitions) and is always passed by reference instead of by value

2024-03-21 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114417 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #8 from Jian

[Bug c++/114395] [c++20+] std::is_constructible_v result of const reference incorrect

2024-03-20 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114395 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #10 from Jia

[Bug libstdc++/114400] The resolution of LWG3950 seems incorrectly implemented

2024-03-20 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114400 --- Comment #4 from Jiang An --- (In reply to Jonathan Wakely from comment #1) > The resolution of LWG 3950 has not been implemented, at all. Hmm... r14-5349 seems "implementing the resolution" per the commit message. Perhaps I misread somethin

[Bug libstdc++/114400] New: The resolution of LWG3950 seems incorrectly implemented

2024-03-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114400 Bug ID: 114400 Summary: The resolution of LWG3950 seems incorrectly implemented Product: gcc Version: 14.0 Status: UNCONFIRMED Keywords: rejects-valid

[Bug c++/114388] Behavioral change of typeid on xvalues since GCC 9

2024-03-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114388 --- Comment #7 from Jiang An --- (In reply to Jonathan Wakely from comment #5) > Prior to DR 616 the expression (true ? WrapB().b : WrapD().d) was a prvalue > of type B, created by copying the B (or slicing the D when the condition is > false).

[Bug c++/114388] Behavioral change of typeid on xvalues since GCC 9

2024-03-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114388 --- Comment #3 from Jiang An --- (In reply to Richard Biener from comment #2) > So you say GCC 9+ are wrong with -std=c++98 but OK with -std=c++11 or newer > (the default)? Yes.

[Bug c++/114388] Behavioral change of typeid on xvalues since GCC 9

2024-03-18 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114388 --- Comment #1 from Jiang An --- Moreover, perhaps we should list N3055 in the implementation status page (https://gcc.gnu.org/projects/cxx-status.html) since it did contain behavioral change of typeid.

[Bug c++/114388] New: Behavioral change of typeid on xvalues since GCC 9

2024-03-18 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114388 Bug ID: 114388 Summary: Behavioral change of typeid on xvalues since GCC 9 Product: gcc Version: 9.5.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal

[Bug libstdc++/114387] New: Explicitly declared destructor makes basic_format_context sometimes not movable

2024-03-18 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114387 Bug ID: 114387 Summary: Explicitly declared destructor makes basic_format_context sometimes not movable Product: gcc Version: 14.0 Status: UNCONFIRMED Severity

[Bug libstdc++/114354] std::shared_ptr constructor constraints are checked too late

2024-03-16 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114354 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug libstdc++/114336] Manual should document implementation-defined behaviour in C++20 and C++23

2024-03-14 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114336 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug libstdc++/77776] C++17 std::hypot implementation is poor

2024-03-03 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=6 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #14 from Jian

[Bug c++/114163] Calling member function of an incomplete type compiles in gcc and does not compile in clang and msvc

2024-02-29 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114163 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #2 from Jian

[Bug c++/114076] list-initialization with assignment expression triggers wrong template instanciation

2024-02-23 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114076 --- Comment #2 from Jiang An --- The "templatization" trick also works for GCC. https://godbolt.org/z/8PeMMzsbb ``` template struct holder { holder() = default; constexpr ~holder() { static_assert(sizeof(T) || true); } };

[Bug c++/114076] list-initialization with assignment expression triggers wrong template instanciation

2024-02-23 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114076 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug c++/104850] Instantiating a destructor for a template class too early, before the calling destructor is seen - rejects valid code

2024-02-23 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104850 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #5 from Jian

[Bug c++/114078] New: operator new and operator delete are incorrectly acceptable as explicit object member functions

2024-02-23 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114078 Bug ID: 114078 Summary: operator new and operator delete are incorrectly acceptable as explicit object member functions Product: gcc Version: 14.0 Status: UNCONFIRMED

[Bug libstdc++/113782] constexpr on std::initializer_list, std::pair and std::tuple is non-conforming for C++11

2024-02-21 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113782 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug libstdc++/114018] std::nexttoward is not implemented for C++23-FP-Types

2024-02-21 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114018 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #12 from Jia

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2024-02-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 --- Comment #8 from Jiang An --- (In reply to Giuseppe D'Angelo from comment #7) > Hi, > > > Note that this example adds a mediate function template > > (test_array_element_initializable) to "reduce" the non-constexpr-ness of > > std::declval

[Bug libstdc++/113007] `std::variant` converting constructor and `operator=` compile while the C++ Standard says they must not

2024-02-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113007 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #8 from Jian

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2024-02-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 --- Comment #6 from Jiang An --- (In reply to Jiang An from comment #5) > `decltype(std::declval > decltype(_Arr<_Ti>{{std::forward<_Tp>(__t)}})>(std::declval<_Tp>()))` Typo, this should be `decltype(std::declval decltype(_Arr<_Ti>{{std::forwa

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2024-02-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 --- Comment #5 from Jiang An --- Function pointers seem working (https://gcc.godbolt.org/z/Mbvfafdof). ``` template constexpr bool is_array_element_initializable_from = false; template constexpr bool is_array_element_initializable_from decltype

[Bug libstdc++/113060] std::variant converting constructor/assignment is non-conforming after P2280?

2024-02-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113060 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #4 from Jian

[Bug libstdc++/113851] New: boyer_moore_searcher and boyer_moore_horspool_searcher fail to accept ADL-incompatible element types

2024-02-09 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113851 Bug ID: 113851 Summary: boyer_moore_searcher and boyer_moore_horspool_searcher fail to accept ADL-incompatible element types Product: gcc Version: 14.0 Status: UNCONFIRM

[Bug c++/113563] Rejects capture of `this` in C++23 `this auto` lambda

2024-02-05 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113563 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug c++/113638] Array bounds of variable templates are not correctly deduced from initializers since GCC13

2024-01-28 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113638 --- Comment #1 from Jiang An --- > The following code snippet is incorrectly processed since C++13. Typo: this should be "since GCC13".

[Bug c++/113638] New: Array bounds of variable templates are not correctly deduced from initializers since GCC13

2024-01-28 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113638 Bug ID: 113638 Summary: Array bounds of variable templates are not correctly deduced from initializers since GCC13 Product: gcc Version: 13.2.1 Status: UNCONFIRMED

[Bug libstdc++/113522] std::swap cannot be called with explicit template argument std::array

2024-01-25 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113522 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #4 from Jian

[Bug libstdc++/113470] New: Should std::tuple_size be a complete type?

2024-01-17 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113470 Bug ID: 113470 Summary: Should std::tuple_size be a complete type? Product: gcc Version: 14.0 Status: UNCONFIRMED Keywords: rejects-valid Severity: normal Prio

[Bug libstdc++/113200] std::char_traits::move is not constexpr when the argument is a string literal

2024-01-03 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113200 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #9 from Jian

[Bug c++/113141] New: ICE on conversion to reference in aggregate initialization

2023-12-25 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113141 Bug ID: 113141 Summary: ICE on conversion to reference in aggregate initialization Product: gcc Version: 13.2.1 Status: UNCONFIRMED Keywords: ice-checking, ice

[Bug c++/103183] [11/12/13/14 Regression] ind[arr] produces an lvalue when arr is an array xvalue

2023-12-21 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103183 --- Comment #5 from Jiang An --- Seems fixed together by commit r14-6753-g8dfc52a75d4d6c8be1c61b4aa831b1812b14a10e. https://godbolt.org/z/on3K451a5

[Bug c++/113047] dereferencing a null pointer in a constant expression

2023-12-18 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113047 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #3 from Jian

[Bug libstdc++/113074] std::to_address should be SFINAE safe

2023-12-18 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113074 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #6 from Jian

[Bug libstdc++/111948] subrange modifies a const size object

2023-11-08 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111948 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #6 from Jian

[Bug c++/112439] New: Modification of a member overlapping with a [[no_unique_address]] member in the constructor is incorrectly rejected

2023-11-08 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112439 Bug ID: 112439 Summary: Modification of a member overlapping with a [[no_unique_address]] member in the constructor is incorrectly rejected Product: gcc Version:

[Bug libstdc++/110854] constructor of std::counting_semaphore is not constexpr

2023-10-16 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110854 --- Comment #3 from Jiang An --- (In reply to Jiang An from comment #2) > The constructor of the internal __platform_semaphore class currently calls > sem_init, which make it incompatible with constexpr... It seems doable to make the ctor const

[Bug c++/94264] Array-to-pointer conversion not performed on array prvalues

2023-10-08 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94264 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #5 from Jiang

[Bug c++/111723] New: #pragma GCC system_header suppresses errors from narrowing conversions

2023-10-07 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111723 Bug ID: 111723 Summary: #pragma GCC system_header suppresses errors from narrowing conversions Product: gcc Version: 13.2.1 Status: UNCONFIRMED Keywords: accep

[Bug libstdc++/111327] std::bind_front (and std::not_fn) doesn't always perfectly forward according to value category of the call wrapper object

2023-09-28 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111327 --- Comment #6 from Jiang An --- It seems that deleted operator() overloads in the return type of std::not_fn is only necessary since C++20. The changes were made in P0356R5. In C++17, the return type was nearly fully specified and didn't have

[Bug libstdc++/111327] std::bind_front (and std::not_fn) doesn't always perfectly forward according to value category of the call wrapper object

2023-09-21 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111327 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #5 from Jian

[Bug libstdc++/111511] Incorrect ADL in std::to_array in GCC 11/12/13

2023-09-21 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111511 --- Comment #5 from Jiang An --- (In reply to m.cencora from comment #2) > (In reply to Jonathan Wakely from comment #1) > > (In reply to Jiang An from comment #0) > > > Not sure whether this should be WONTFIX since the implementation is > > > f

[Bug c++/111512] New: GCC's __builtin_memcpy can trigger ADL

2023-09-20 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111512 Bug ID: 111512 Summary: GCC's __builtin_memcpy can trigger ADL Product: gcc Version: 14.0 Status: UNCONFIRMED Keywords: rejects-valid Severity: normal Priority

[Bug libstdc++/111511] New: Incorrect ADL in std::to_array in GCC 11/12/13

2023-09-20 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111511 Bug ID: 111511 Summary: Incorrect ADL in std::to_array in GCC 11/12/13 Product: gcc Version: 13.2.1 Status: UNCONFIRMED Keywords: rejects-valid Severity: normal

[Bug c++/111379] comparison between unequal pointers to void should be illegal during constant evaluation

2023-09-11 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111379 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug libstdc++/106547] std::variant::emplace goes into an infinite recursion with certain weird trivially copyable types

2023-09-11 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106547 --- Comment #3 from Jiang An --- (In reply to Valentine Anderson from comment #2) > From what I understand, the key feature of trivially copyable types is that > memcpy‘ing an object of such a type onto another object is equivalent to a > copy a

[Bug libstdc++/106547] std::variant::emplace goes into an infinite recursion with certain weird trivially copyable types

2023-09-11 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106547 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug libstdc++/111351] constexpr std::string objects permitted to escape constant evaluation when SSO

2023-09-11 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111351 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #2 from Jian

[Bug libstdc++/111358] libstdc++'s optional::and_then and optional::transform are not ADL-proof

2023-09-10 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111358 --- Comment #1 from Jiang An --- Related issues: Monadic operations of expected are not ADL-proof per the uses of **this in [expected.object.monadic]. However, currently implementations make them ADL-proof by directly naming the union member, w

[Bug libstdc++/111358] New: libstdc++'s optional::and_then and optional::transform are not ADL-proof

2023-09-10 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111358 Bug ID: 111358 Summary: libstdc++'s optional::and_then and optional::transform are not ADL-proof Product: gcc Version: 14.0 Status: UNCONFIRMED Keywords: rejec

[Bug c++/111299] lack of warning on dangling reference to temporary

2023-09-05 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111299 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #1 from Jian

[Bug libstdc++/111258] std::string cannot to be moved in constant evaluated expression

2023-09-04 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111258 --- Comment #3 from Jiang An --- I've reduced the example and filed Bug 111284.

[Bug c++/111284] New: Some passing-by-value parameters are miscompiled since GCC 9

2023-09-04 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111284 Bug ID: 111284 Summary: Some passing-by-value parameters are miscompiled since GCC 9 Product: gcc Version: 13.2.0 Status: UNCONFIRMED Keywords: accepts-invalid

[Bug c++/111272] [13/14 Regression] Truncated error messages with -std=c++23 and -std=c++26

2023-09-04 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111272 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #3 from Jian

[Bug libstdc++/111258] std::string cannot to be moved in constant evaluated expression

2023-09-01 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111258 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #2 from Jian

[Bug c++/110342] [C++26] P2361R6 - Unevaluated strings

2023-08-24 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110342 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #3 from Jian

[Bug libstdc++/100249] missing forwarding std::__invoke result in ranges::is_permutation and ranges::clamp

2023-08-19 Thread de34 at live dot cn via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100249 Jiang An changed: What|Removed |Added CC||de34 at live dot cn --- Comment #13 from Jia

  1   2   >