https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71446
--- Comment #4 from Roman Perepelitsa ---
Please take a look at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71446#c1.
This code compiles. Given that it contains `{.value = 0}`, one would reasonably
expect that it creates an instance of a struct
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71096
Roman Perepelitsa changed:
What|Removed |Added
CC||roman.perepelitsa at gmail dot
com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68360
Roman Perepelitsa changed:
What|Removed |Added
CC||roman.perepelitsa at gmail dot
com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63875
Roman Perepelitsa changed:
What|Removed |Added
CC||roman.perepelitsa at gmail dot
com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71446
--- Comment #1 from Roman Perepelitsa ---
The same bug can lead to incorrect behaviour at run time.
#include
#include
struct S {
int value;
};
void F(S) { puts("right"); }
void F(std::initializer_list) { puts("wrong"); }
i
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: roman.perepelitsa at gmail dot com
Target Milestone: ---
Actual behaviour: the following program compiles.
Expected behaviour: doesn't compile.
#include
struct S {
int
erity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: roman.perepelitsa at gmail dot com
Target Milestone: ---
This compiles:
void F();
void G() { +(&F); }
This doesn't:
template void F();
v
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: roman.perepelitsa at gmail dot com
Target Milestone: ---
When compiling this program:
template
void F(Args&&...);
template
int F(Args&&...);
int main
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57433
Roman Perepelitsa changed:
What|Removed |Added
CC||roman.perepelitsa at gmail dot
com
normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: roman.perepelitsa at gmail dot com
Target Milestone: ---
=== Program #1 ===
template struct V {};
template
void Foo(V, V) {}
template
void Foo(V<>, V) {}
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60044
Roman Perepelitsa changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62115
Roman Perepelitsa changed:
What|Removed |Added
CC||roman.perepelitsa at gmail dot
com
: unassigned at gcc dot gnu.org
Reporter: roman.perepelitsa at gmail dot com
#include
struct S {
S(int) {}
S(const S&) = default; // (1)
template // (2)
S(S&& other) {
puts("move");
}
};
int main() {
S s = 42;
(void)s;
}
This program une
: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: roman.perepelitsa at gmail dot com
#include
struct ConvertibleToAny {
template operator T() const { return T(); }
};
int main() {
std::tuple t(ConvertibleToAny{});
}
Produces:
third_party/crosstool/v17/stable/gcc
: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: roman.perepelitsa at gmail dot com
$ cat test.cc
#include
template
using Void = void;
template
struct Foo {
const char* value = "primary template";
};
template
struct Foo> {
const char* value = &q
15 matches
Mail list logo