SVF
SVF copied to clipboard
SVF-2.4 fails to build due to null pointer (-Werror)
SVF 2.4 fails to build because of -Werror
-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Linker detection: GNU ld
-- Found Z3: ./SVF/z3.obj/bin/libz3.a
-- Z3 include dir: ./SVF/z3.obj/include
-- Configuring done
-- Generating done
-- Build files have been written to: ./SVF/Release-build
[ 0%] Building C object lib/CUDD/CMakeFiles/Cudd.dir/epd.c.o
[ 1%] Building C object lib/CUDD/CMakeFiles/Cudd.dir/st.c.o
[ 3%] Building C object lib/CUDD/CMakeFiles/Cudd.dir/mtr.c.o
[ 3%] Building C object lib/CUDD/CMakeFiles/Cudd.dir/util.c.o
[ 4%] Building C object lib/CUDD/CMakeFiles/Cudd.dir/cuddInt.c.o
[ 5%] Linking C static library libCudd.a
[ 5%] Built target Cudd
[ 6%] Building CXX object lib/CMakeFiles/Svf.dir/DDA/ContextDDA.cpp.o
[ 8%] Building CXX object lib/CMakeFiles/Svf.dir/DDA/DDAPass.cpp.o
[ 8%] Building CXX object lib/CMakeFiles/Svf.dir/DDA/DDAClient.cpp.o
[ 9%] Building CXX object lib/CMakeFiles/Svf.dir/DDA/DDAStat.cpp.o
[ 10%] Building CXX object lib/CMakeFiles/Svf.dir/DDA/FlowDDA.cpp.o
[ 11%] Building CXX object lib/CMakeFiles/Svf.dir/FastCluster/fastcluster.cpp.o
[ 12%] Building CXX object lib/CMakeFiles/Svf.dir/Graphs/ConsG.cpp.o
[ 13%] Building CXX object lib/CMakeFiles/Svf.dir/Graphs/ExternalPAG.cpp.o
[ 14%] Building CXX object lib/CMakeFiles/Svf.dir/Graphs/ICFG.cpp.o
[ 15%] Building CXX object lib/CMakeFiles/Svf.dir/Graphs/OfflineConsG.cpp.o
[ 16%] Building CXX object lib/CMakeFiles/Svf.dir/Graphs/PAG.cpp.o
[ 17%] Building CXX object lib/CMakeFiles/Svf.dir/Graphs/PTACallGraph.cpp.o
[ 18%] Building CXX object lib/CMakeFiles/Svf.dir/Graphs/SVFG.cpp.o
[ 19%] Building CXX object lib/CMakeFiles/Svf.dir/Graphs/SVFGOPT.cpp.o
[ 20%] Building CXX object lib/CMakeFiles/Svf.dir/Graphs/SVFGStat.cpp.o
[ 20%] Building CXX object lib/CMakeFiles/Svf.dir/Graphs/ThreadCallGraph.cpp.o
./SVF/lib/Graphs/SVFG.cpp: In member function ‘const SVF::SVFFunction* SVF::SVFG::isFunEntrySVFGNode(const SVFGNode*) const’:
./SVF/lib/Graphs/SVFG.cpp:706:31: error: ‘this’ pointer is null [-Werror=nonnull]
706 | return phi->getFun();
| ~~~~~~~~~~~^~
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-nonull’ may have been intended to silence earlier diagnostics
cc1plus: all warnings being treated as errors
make[2]: *** [lib/CMakeFiles/Svf.dir/build.make:244: lib/CMakeFiles/Svf.dir/Graphs/SVFG.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:305: lib/CMakeFiles/Svf.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
This error has been fixed in a later version (by this commit https://github.com/SVF-tools/SVF/commit/ada34e76eb5dc72720821ef735d14c630363ecdc)
You can use the latest SVF or the most recent release.