[Bug c++/113108] Internal compiler error when choosing overload for operator=

2023-12-21 Thread kyrylo.bohdanenko at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113108 --- Comment #2 from Kyrylo Bohdanenko --- Godbolt link (not the original example): https://godbolt.org/z/E1veMxcdx

[Bug c++/113108] Internal compiler error when choosing overload for operator=

2023-12-21 Thread kyrylo.bohdanenko at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113108 --- Comment #1 from Kyrylo Bohdanenko --- Compiled with -std=c++17 -O2 -Wall -Wextra -Wpedantic

[Bug c++/113108] New: Internal compiler error when choosing overload for operator=

2023-12-21 Thread kyrylo.bohdanenko at gmail dot com via Gcc-bugs
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: kyrylo.bohdanenko at gmail dot com Target Milestone: --- The following code causes GCC internal error: template struct Foo { Foo& operator=(Foo&&) = default; T data;

[Bug c++/95454] type-level nodiscard not applied to constructors

2022-07-19 Thread kyrylo.bohdanenko at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95454 Kyrylo Bohdanenko changed: What|Removed |Added CC||kyrylo.bohdanenko at gmail dot com

[Bug tree-optimization/106076] Sub-optimal code is generated for checking bitfields via proxy functions

2022-06-24 Thread kyrylo.bohdanenko at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106076 --- Comment #1 from Kyrylo Bohdanenko --- The provided assembly is for -O2/-O3

[Bug tree-optimization/106076] New: Sub-optimal code is generated for checking bitfields via proxy functions

2022-06-24 Thread kyrylo.bohdanenko at gmail dot com via Gcc-bugs
: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: kyrylo.bohdanenko at gmail dot com Target Milestone: --- Consider the following struct: #include struct SomeClass { uint16_t dummy1 : 1

[Bug c++/101240] New: [missed optimization] Transitivity of less-than and less-or-equal

2021-06-28 Thread kyrylo.bohdanenko at gmail dot com via Gcc-bugs
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: kyrylo.bohdanenko at gmail dot com Target Milestone: --- Consider the following C++ code #define ALWAYS_TRUE(x) do { if (x) __builtin_unreachable(); } while (false) int divide(int

[Bug c++/91953] [8/9/10 Regression] G++ rejects lambda with constexpr variable

2019-10-08 Thread kyrylo.bohdanenko at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91953 --- Comment #5 from Kyrylo Bohdanenko --- Sorry, the move constructor isn't necessary... template struct integral_constant { constexpr integral_constant(const integral_constant&) noexcept {} constexpr integral_constant() noexcept {} }; int

[Bug c++/91953] [8/9/10 Regression] G++ rejects lambda with constexpr variable

2019-10-08 Thread kyrylo.bohdanenko at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91953 --- Comment #4 from Kyrylo Bohdanenko --- The problem can also be worked around by manually specifying "the holy trio" of constructors and providing empty bodies (= default does not work) This code compiles with GCC 8.3.0 and trunk (20190919):