This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH 0/6] New warnings -Wstring-plus-{char, int} (PR c++/62181)
- From: Xi Ruoyao <ryxi at stu dot xidian dot edu dot cn>
- To: gcc-patches at gcc dot gnu dot org
- Cc: ryxi at stu dot xidian dot edu dot cn
- Date: Mon, 12 Jun 2017 09:26:40 +0800
- Subject: [PATCH 0/6] New warnings -Wstring-plus-{char, int} (PR c++/62181)
- Authentication-results: sourceware.org; auth=none
Hi,
I've implemented -Wstring-plus-int and -Wstring-plus-char (like their
counterpart in Clang) for GCC.
This series of patch has been bootstrapped and regtested. OK for trunk?
Currently these options are not enabled by default like Clang does.
Maybe we could make them enabled by default or by -Wall/-Wextra later.
Xi Ruoyao (6):
Move char_type_p prototype into c-common.h
New warning option -Wstring-plus-int
New warning option -Wstring-plus-char
New tests for -Wstring-plus-int
New tests for -Wstring-plus-char
Document new warning options
gcc/c-family/c-common.c | 25 ++++++++++++++++++++
gcc/c-family/c-common.h | 2 ++
gcc/c-family/c-warn.c | 22 ++++++++++++++++++
gcc/c-family/c.opt | 10 ++++++++
gcc/c/c-typeck.c | 17 +++++++++++++-
gcc/cp/call.c | 28 ++++++++++++++++++++++
gcc/cp/cp-tree.h | 1 -
gcc/cp/tree.c | 2 +-
gcc/doc/invoke.texi | 22 +++++++++++++++++-
gcc/testsuite/c-c++-common/Wstring-plus-char.c | 26 +++++++++++++++++++++
gcc/testsuite/c-c++-common/Wstring-plus-int.c | 26 +++++++++++++++++++++
gcc/testsuite/g++.dg/Wstring-plus-char-1.C | 16 +++++++++++++
gcc/testsuite/g++.dg/Wstring-plus-char-2.C | 26 +++++++++++++++++++++
gcc/testsuite/g++.dg/Wstring-plus-char-3.C | 32 ++++++++++++++++++++++++++
gcc/testsuite/g++.dg/Wstring-plus-int-1.C | 9 ++++++++
gcc/testsuite/g++.dg/Wstring-plus-int-2.C | 10 ++++++++
16 files changed, 270 insertions(+), 4 deletions(-)
create mode 100644 gcc/testsuite/c-c++-common/Wstring-plus-char.c
create mode 100644 gcc/testsuite/c-c++-common/Wstring-plus-int.c
create mode 100644 gcc/testsuite/g++.dg/Wstring-plus-char-1.C
create mode 100644 gcc/testsuite/g++.dg/Wstring-plus-char-2.C
create mode 100644 gcc/testsuite/g++.dg/Wstring-plus-char-3.C
create mode 100644 gcc/testsuite/g++.dg/Wstring-plus-int-1.C
create mode 100644 gcc/testsuite/g++.dg/Wstring-plus-int-2.C
--
Xi Ruoyao <ryxi@stu.xidian.edu.cn>
School of Aerospace Science and Technology, Xidian University