SVF icon indicating copy to clipboard operation
SVF copied to clipboard

SVF-2.4 fails to build due to null pointer (-Werror)

Open van-ema opened this issue 2 years ago • 1 comments

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

van-ema avatar Aug 26 '22 14:08 van-ema

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.

yuleisui avatar Aug 27 '22 01:08 yuleisui