freenonheap-object warning (GCC 11) from Bison-generated files
I get a couple of -Wfree-nonheap-object from GCC 11. The files are generated by GNU Bison 3.4.2. Not sure whether it is a Bison bug or GCC 11. Maybe we have to increase the Bison version or file a bug report to GNU Bison (or GCC).
- CMake master: ddd95458, 2021-01-15
- GCC 11: not yet released, 11.0.0 20210114 (experimental) [revision 08a4adcf2b6ded2fea97195c715757df61a23395]
- Flags:
-Wall
Complete warning message:
Scanning dependencies of target CMakeLib
[ 54%] Building CXX object Source/CMakeFiles/CMakeLib.dir/LexerParser/cmCommandArgumentLexer.cxx.o
[ 54%] Building CXX object Source/CMakeFiles/CMakeLib.dir/LexerParser/cmCommandArgumentParser.cxx.o
cmCommandArgumentParser.cxx: In function ‘int cmCommandArgument_yyparse(yyscan_t)’:
cmCommandArgumentParser.cxx:1723:18: warning: ‘void free(void*)’ called on unallocated object ‘yyssa’ [-Wfree-nonheap-object]
cmCommandArgumentParser.cxx:1088:18: note: declared here
[ 54%] Building CXX object Source/CMakeFiles/CMakeLib.dir/LexerParser/cmDependsJavaLexer.cxx.o
[ 54%] Building CXX object Source/CMakeFiles/CMakeLib.dir/LexerParser/cmDependsJavaParser.cxx.o
cmDependsJavaParser.cxx: In function ‘int cmDependsJava_yyparse(yyscan_t)’:
cmDependsJavaParser.cxx:6421:18: warning: ‘void free(void*)’ called on unallocated object ‘yyssa’ [-Wfree-nonheap-object]
cmDependsJavaParser.cxx:2073:18: note: declared here
[ 54%] Building CXX object Source/CMakeFiles/CMakeLib.dir/LexerParser/cmExprLexer.cxx.o
[ 54%] Building CXX object Source/CMakeFiles/CMakeLib.dir/LexerParser/cmExprParser.cxx.o
cmExprParser.cxx: In function ‘int cmExpr_yyparse(yyscan_t)’:
cmExprParser.cxx:1713:18: warning: ‘void free(void*)’ called on unallocated object ‘yyssa’ [-Wfree-nonheap-object]
cmExprParser.cxx:1076:18: note: declared here
[ 54%] Building CXX object Source/CMakeFiles/CMakeLib.dir/LexerParser/cmFortranLexer.cxx.o
[ 54%] Building CXX object Source/CMakeFiles/CMakeLib.dir/LexerParser/cmFortranParser.cxx.o
cmFortranParser.cxx: In function ‘int cmFortran_yyparse(yyscan_t)’:
cmFortranParser.cxx:1993:18: warning: ‘void free(void*)’ called on unallocated object ‘yyssa’ [-Wfree-nonheap-object]
cmFortranParser.cxx:1317:18: note: declared here