diff options
author | Jason Merrill <jason@redhat.com> | 2023-05-12 12:19:25 -0400 |
---|---|---|
committer | Jason Merrill <jason@redhat.com> | 2023-05-31 23:17:37 -0400 |
commit | 0a479c31b515ee872f48d5b53254a01da0fba61f (patch) | |
tree | 920fa740f3dbde6921c0e78deddc21a9d8e03263 /gcc | |
parent | 09ff83d4bc1405c9af803fb84bfc49d6001da47b (diff) | |
download | gcc-0a479c31b515ee872f48d5b53254a01da0fba61f.zip gcc-0a479c31b515ee872f48d5b53254a01da0fba61f.tar.gz gcc-0a479c31b515ee872f48d5b53254a01da0fba61f.tar.bz2 |
c++: make -fpermissive avoid -Werror=narrowing
Currently we make -Wnarrowing an error by default by forcing pedantic_errors
on, but for consistency -fpermissive should prevent that.
In general I'm inclined to move away from using permerror in favor of this
kind of model, with specific flags for each diagnostic.
gcc/cp/ChangeLog:
* typeck2.cc (check_narrowing): Check flag_permissive.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/typeck2.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/cp/typeck2.cc b/gcc/cp/typeck2.cc index 8724877..1c204c86 100644 --- a/gcc/cp/typeck2.cc +++ b/gcc/cp/typeck2.cc @@ -1109,7 +1109,8 @@ check_narrowing (tree type, tree init, tsubst_flags_t complain, else if (complain & tf_error) { int savederrorcount = errorcount; - global_dc->pedantic_errors = 1; + if (!flag_permissive) + global_dc->pedantic_errors = 1; auto s = make_temp_override (global_dc->dc_warn_system_headers, true); pedwarn (loc, OPT_Wnarrowing, "narrowing conversion of %qE from %qH to %qI", |