[Bug testsuite/98566] g++.dg/warn/Wmismatched-dealloc.C fails with -std=c++11

2021-01-06 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98566

--- Comment #7 from Jakub Jelinek  ---
(In reply to Marek Polacek from comment #4)
> C++ tests aren't run in C++11 mode unless specified by GXX_TESTSUITE_STDS
> (to alleviate testing times).

Or one can use make check-c++-all

[Bug testsuite/98566] g++.dg/warn/Wmismatched-dealloc.C fails with -std=c++11

2021-01-06 Thread mpolacek at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98566

Marek Polacek  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #6 from Marek Polacek  ---
Fixed.

[Bug testsuite/98566] g++.dg/warn/Wmismatched-dealloc.C fails with -std=c++11

2021-01-06 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98566

--- Comment #5 from CVS Commits  ---
The master branch has been updated by Marek Polacek :

https://gcc.gnu.org/g:e6a5daae7ec5318c3949432d92b7f674dab5241d

commit r11-6504-ge6a5daae7ec5318c3949432d92b7f674dab5241d
Author: Marek Polacek 
Date:   Wed Jan 6 12:15:36 2021 -0500

c++: Fix g++.dg/warn/Wmismatched-dealloc.C for C++11 [PR98566]

C++ sized deallocation only came in C++14, so this test wasn't
working properly in C++11, which isn't tested by default.  Fixed
thus by constraining the dg-errors to C++14 only.

gcc/testsuite/ChangeLog:

PR testsuite/98566
* g++.dg/warn/Wmismatched-dealloc.C: Use target c++14 in
dg-error.

[Bug testsuite/98566] g++.dg/warn/Wmismatched-dealloc.C fails with -std=c++11

2021-01-06 Thread mpolacek at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98566

--- Comment #4 from Marek Polacek  ---
C++ tests aren't run in C++11 mode unless specified by GXX_TESTSUITE_STDS (to
alleviate testing times).

[Bug testsuite/98566] g++.dg/warn/Wmismatched-dealloc.C fails with -std=c++11

2021-01-06 Thread msebor at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98566

--- Comment #3 from Martin Sebor  ---
I suspect I meant for the test to only be compiled in C++ 14 and up, but it has
{ dg-do compile { target c++11 } } at the top so that seems wrong.  But the
test log shows that it is only compiled in c++14 mode and up (and passes) so I
don't understand what's going on.

[Bug testsuite/98566] g++.dg/warn/Wmismatched-dealloc.C fails with -std=c++11

2021-01-06 Thread mpolacek at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98566

Marek Polacek  changed:

   What|Removed |Added

   Last reconfirmed||2021-01-06
   Assignee|unassigned at gcc dot gnu.org  |mpolacek at gcc dot 
gnu.org
 Ever confirmed|0   |1
 Status|UNCONFIRMED |ASSIGNED

--- Comment #2 from Marek Polacek  ---
I'll do it.

[Bug testsuite/98566] g++.dg/warn/Wmismatched-dealloc.C fails with -std=c++11

2021-01-06 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98566

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #1 from Jakub Jelinek  ---
That seems to be a bug in the testcase, only C++14 and later has sized
deallocation, so C++11 will only have operator delete (void *) and not be
ambiguous, while C++14 will have operator delete (void *) and operator delete
(void *, std::size_t) and C++17 adds to that also operator delete (void *,
std::align_val_t) and operator delete (void *, std::size_t, std::align_val_t).

So, either the testcase should be dg-do compile { target c++14 }, or the
dg-error lines should be { target c++14 }, I think the latter is preferrable.