++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/*** BEGIN SOURCE ***/
int main() {
int n = 1;
auto p = new int[n][2, 3];
}
/ END SOURCE /
This compiles without errors, but `2, 3` is not a
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/** BEGIN SOURCE **/
template
void f() {
typedef void(*arr[T::value])();
new arr
Version: 9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/*** BEGIN SOURCE
ty: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/** BEGIN SOURCE **/
template
struct A {
template class Head, T... Args>
sta
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/** BEGIN SOURCE **/
template struct S;
/*** END SOURCE ***/
'
Segmentation fault
1 | template str
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/** BEGIN SOURCE **/
template
struct S {
template
struct X;
};
: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/** BEGIN SOURCE **/
template
struct S {
template
struct X {
static constexpr bool value = false;
};
};
template
++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/* BEGIN SOURCE */
int main() {
constexpr auto f = [](auto self, auto n) {
if(n < 2) return n;
ret
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86926
--- Comment #1 from Vladimir Reshetnikov ---
Note: the error disappears if the variable `f` is not declared `constexpr`.
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/** BEGIN SOURCE **/
template
struct Outer {
template
struct Inner;
template
using
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/** BEGIN SOURCE **/
template
struct Outer {
template
struct Inner;
template
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86958
--- Comment #1 from Vladimir Reshetnikov ---
Sorry, there is a missing closing parenthesis in my code. The last line should
look like this:
static_assert(Outer::Alias::value == sizeof(bool)); // error
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/*** BEGIN SOURCE ***/
template
struct Outer {
template
struct Inner;
template
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86918
--- Comment #4 from Vladimir Reshetnikov ---
I could not find a wording in the Standard that disallows this kind of
specialization (although certainly I might have overlooked it). A similar code
where the template parameter list is changed in a s
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/** BEGIN SOURCE **/
template
struct Outer {
template
struct Inner;
};
template<>
te
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86958
--- Comment #4 from Vladimir Reshetnikov ---
Apparently, I somehow pasted a wrong code into this bug report. If you wish,
you can close this one, and I will file proper one(s).
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/** BEGIN SOURCE **/
template
struct Outer {
template
struct Inner;
template
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86958
Vladimir Reshetnikov changed:
What|Removed |Added
Status|RESOLVED|CLOSED
--- Comment #6 from Vladim
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86915
Vladimir Reshetnikov changed:
What|Removed |Added
Status|RESOLVED|VERIFIED
--- Comment #4 from Vlad
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86728
Vladimir Reshetnikov changed:
What|Removed |Added
Status|RESOLVED|VERIFIED
--- Comment #7 from Vlad
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84839
Vladimir Reshetnikov changed:
What|Removed |Added
Status|RESOLVED|VERIFIED
--- Comment #5 from Vlad
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84798
Vladimir Reshetnikov changed:
What|Removed |Added
Status|RESOLVED|VERIFIED
--- Comment #11 from Vla
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84840
Vladimir Reshetnikov changed:
What|Removed |Added
Status|RESOLVED|VERIFIED
--- Comment #3 from Vlad
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/* SOURCE */
template
struct S {
template
struct X { };
};
template<>
te
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86966
--- Comment #2 from Vladimir Reshetnikov ---
I believe the code is valid. We explicitly specialize the member class template
X of S for S<> (i.e. the parameter pack T is empty). T is expanded into a list
of zero non-type template parameters of S<
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86966
--- Comment #3 from Vladimir Reshetnikov ---
Might be related to Bug 86960 and Bug 86918.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86966
--- Comment #4 from Vladimir Reshetnikov ---
Also, might be related to Bug 84796.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86960
--- Comment #2 from Vladimir Reshetnikov ---
Also, might be related to Bug 84796 and Bug 86961.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86961
--- Comment #1 from Vladimir Reshetnikov ---
Might be related to Bug 86956 and Bug 86959.
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/* BEGIN SOURCE */
auto compose = [](auto... fs) {
if constexpr (sizeof...(fs) == 0
: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/* SOURCE */
template
struct X {
template class...>
struct Y { };
};
using type = X
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/*** BEGIN SOURCE ***/
template
struct X {
template class U>
stru
++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
/* BEGIN SOURCE */
template
using ref = T&;
int x;
template class T, T>
struct X { };
struct Y : X { };
/** END
++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
The following C++ code causes an ICE in GCC 8.0.1 20180308 (tested with
https://godbolt.org/):
/* SOURCE */
template
struct S {
template
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
The following C++ code causes an ICE in GCC 8.0.1 20180308 (tested with
https://godbolt.org/):
/** SOURCE
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
The following C++ code causes an ICE in GCC 8.0.1 20180312 (tested with
https://godbolt.org/):
/* SOURCE
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
The following C++ code causes an ICE in GCC 8.0.1 20180312 (tested with
https://godbolt.org/):
/* SOURCE */
struct S
: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
The following C++ code is rejected by GCC 8.0.1 20180313 (tested with
https://godbolt.org/):
/* SOURCE
: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: v.reshetnikov at gmail dot com
Target Milestone: ---
The following C++ code is rejected by GCC 8.0.1 20180313 (tested with
https://godbolt.org/):
/* SOURCE
39 matches
Mail list logo