View Issue Details

IDProjectCategoryView StatusLast Update
0000289Cinelerra-GG[All Projects] Bugpublic2019-09-02 20:11
Reporterferdnyc Assigned Togoodguy  
PrioritylowSeveritytrivialReproducibilityalways
Status closedResolutionfixed 
Product Version 
Target VersionFixed in Version2019-08 
Summary0000289: PATCH: configure.ac: Use Clang -Wno-unknown-warning-option instead of invalid -Wno-unknown-warning
Descriptionconfigure.ac was setting the CFLAG "-Wno-unknown-warning", which is not a real flag in either GCC or Clang.

The attached patch replaces the invalid flag with Clang's "-Wno-unknown-warning-option", which GCC will also ignore (see below). GCC will unfortunately still note the unrecognized -Wno-unknown-warning-option flag, I don't know of any way to silence that.
Steps To ReproduceBecause GCC only silences messages about unknown warning flags "unless other diagnostics are produced", it will still note the unrecognized option whenever it prints _other_ output.

1. Configure cinelerra-gg and start building
2. Wait for any other warning, e.g. the unused variables in djbfft:
BUILDSTDERR: 8r0.c:76:30: warning: unused variable 't11' [-Wunused-variable]
BUILDSTDERR: 76 | register real t8, t9, t10, t11, t12, t13, t14, t15;
BUILDSTDERR: | ^~~
BUILDSTDERR: 8r0.c:76:25: warning: unused variable 't10' [-Wunused-variable]
BUILDSTDERR: 76 | register real t8, t9, t10, t11, t12, t13, t14, t15;
BUILDSTDERR: | ^~~
BUILDSTDERR: 8r0.c: At top level:
BUILDSTDERR: cc1: warning: unrecognized command line option '-Wno-unknown-warning'
Additional InformationIn fact, not only is "-Wno-unknown-warning" not a real GCC warning flag, it's literally the _example_ of an unrecognized
option used in the GCC documentation, when documenting the fact that it ignores unrecognized "-Wno-" flags by default:

"When an unrecognized warning option is requested (e.g., -Wunknown-warning), GCC emits a diagnostic stating that the option
is not recognized. However, if the -Wno- form is used, the behavior is slightly different: no diagnostic is produced for -Wno-unknown-warning unless other diagnostics are being produced. This allows the use of new -Wno- options with old compilers, but if something goes wrong, the compiler warns that an unrecognized option is present."
- Source: https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#Warning-Options

Clang, OTOH, has a flag "-Wno-unknown-warning-option" to activate behavior similar to GCC's default (ignore unknown warning options).
- Documentation: https://clang.llvm.org/docs/DiagnosticsReference.html#wunknown-warning-option
TagsNo tags attached.

Activities

PhyllisSmith

PhyllisSmith

2019-08-31 03:38

manager   ~0002055

Patch has been applied, checked into GIT, and will in the 2019-08-31 builds tomorrow.
PhyllisSmith

PhyllisSmith

2019-08-30 13:37

manager   ~0002052

Yeah! as you probably noticed with the comment gg put in, this has been irritating him for a loooooong time. Patch will go in soon. He can not say "Yeah!" enough.
ferdnyc

ferdnyc

2019-08-29 21:16

reporter  

0001-configure-Use-Clang-Wno-unknown-warning-option.patch (1,078 bytes)
From 4a2c4403e3ac73b37116a8a196783d00063312e2 Mon Sep 17 00:00:00 2001
From: "FeRD (Frank Dana)" <[email protected]>
Date: Thu, 29 Aug 2019 12:40:50 -0400
Subject: [PATCH] configure: Use Clang -Wno-unknown-warning-option

configure.ac was setting the CFLAG "-Wno-unknown-warning", which
is not a real flag in either GCC or Clang.

This change replaces the invalid flag with Clang's
"-Wno-unknown-warning-option", which GCC will ignore.
---
 cinelerra-5.1/configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/cinelerra-5.1/configure.ac b/cinelerra-5.1/configure.ac
index a8098cb..a0001bf 100644
--- a/cinelerra-5.1/configure.ac
+++ b/cinelerra-5.1/configure.ac
@@ -12,7 +12,7 @@ CFG_CFLAGS+=" -fno-omit-frame-pointer -fno-math-errno -fno-signed-zeros"
 CFG_CFLAGS+=" -pthread -Wall"
 # misguided pedantic warnings
 #  this is extra work, not a gain...
-CFG_CFLAGS+=" -Wno-unknown-warning"
+CFG_CFLAGS+=" -Wno-unknown-warning-option"
 CFG_CFLAGS+=" -Wno-attributes"
 CFG_CFLAGS+=" -Wno-unused-result"
 CFG_CFLAGS+=" -Wno-stringop-overflow"
-- 
2.21.0

Issue History

Date Modified Username Field Change
2019-08-29 21:16 ferdnyc New Issue
2019-08-29 21:16 ferdnyc File Added: 0001-configure-Use-Clang-Wno-unknown-warning-option.patch
2019-08-30 13:37 PhyllisSmith Note Added: 0002052
2019-08-30 14:31 PhyllisSmith Assigned To => goodguy
2019-08-30 14:31 PhyllisSmith Status new => assigned
2019-08-31 03:38 PhyllisSmith Status assigned => resolved
2019-08-31 03:38 PhyllisSmith Resolution open => fixed
2019-08-31 03:38 PhyllisSmith Fixed in Version => 2019-08
2019-08-31 03:38 PhyllisSmith Note Added: 0002055
2019-09-02 20:11 PhyllisSmith Status resolved => closed