Component: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
Target Milestone: ---
The following snippet results in a compilation error:
std::string_view sv;
sv = sv.substr();
> error: no matching function for call to
>
Component: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
Target Milestone: ---
`std::is_invocable_r` gives wrong results when used with a cv-qualified void
return type:
static_assert(std::is_invocable_r::value); // holds
++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
Target Milestone: ---
The following snippet results in a compilation error:
template void fun() {}
bool c = &fun == fun;
> error: assuming cast to type 'void (*)()'
: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
Target Milestone: ---
The following snippet results in a compilation error:
struct X {};
namespace ns {
bool operator==(X const
: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
Target Milestone: ---
The following snippet, extracted from libstdc++, causes the compiler to
generate an error when compiled using -fno-elide-constructors under C++11/14
: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
Target Milestone: ---
The following snippet fails with an error due to use of a deleted function:
#include
struct noncopyable {
noncopyable(noncopyable const&) = de
: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
In the following snippet, whether the expression `xxx` designates a
constexpr function or not depends on whether `foo::value` is defined with an
alias or not:
template
static constexpr
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
It was reported by talin over at ##C++ that the following snippet does not
result in a compilation error as expected:
struct Plant {
virtual
: normal
Priority: P3
Component: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
The following snippet fails with a runtime assertion:
#include
#include
int main() {
std::match_results m;
const char
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62056
--- Comment #15 from Agustín Bergé ---
(In reply to Jonathan Wakely from comment #14)
> Agustin, do you have a copyright assignment?
I do not have one. The attached is derived from libstdc++'s and
I have left the license in place, wouldn't tha
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62056
--- Comment #10 from Agustín Bergé ---
(In reply to Manuel López-Ibáñez from comment #9)
> I cannot say if the libstdc++ implementation could be better
>From a compile-time performance point of view it is, check the implementation
attached to th
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62056
--- Comment #8 from Agustín Bergé ---
(In reply to Manuel López-Ibáñez from comment #7)
> (In reply to Agustín Bergé from comment #6)
> > Well, not necessarily, It's not `std::tuple` which is at fault, but the
> > compiler (gcc and every other).
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62056
--- Comment #6 from Agustín Bergé ---
(In reply to Piotr Dziwinski from comment #5)
> It seems
> the recursive version of `std::tuple` is not going to be optimized easily
> and the new flat implementation is the way to go here.
Well, not necessa
++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
Created attachment 33270
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=33270&action=edit
draft flat tuple implementation
The recursive implementation of `std::tuple` causes noticeable
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
The following snippet results in a compilation error: invalid initialization of
non-const reference of type ‘int&’ from an rvalue of type ‘int’:
int* foo(){ return nullptr; }
int&
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: kaballo86 at hotmail dot com
The following snippet results in an ambiguous overload error:
struct foo1 { void operator()(int&) const {}; };
struct foo2 { void operator()(int const&) const {}; };
st
16 matches
Mail list logo