Fuzz introspector
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Project functions overview

The following table shows data about each function in the project. The functions included in this table correspond to all functions that exist in the executables of the fuzzers. As such, there may be functions that are from third-party libraries.

For further technical details on the meaning of columns in the below table, please see the Glossary .

Func name Functions filename Args Function call depth Reached by Fuzzers Runtime reached by Fuzzers Combined reached by Fuzzers Fuzzers runtime hit Func lines hit % I Count BB Count Cyclomatic complexity Functions reached Reached by functions Accumulated cyclomatic complexity Undiscovered complexity

Fuzzer details

Fuzzer: parse_bson_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 747 65.9%
gold [1:9] 8 0.70%
yellow [10:29] 0 0.0%
greenyellow [30:49] 21 1.85%
lawngreen 50+ 356 31.4%
All colors 1132 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
12 12 1 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_ignore_noop()']

16 252 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::sax_parse(nlohmann::json_abi_v3_12_0::detail::input_format_t,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>*,bool,nlohmann::json_abi_v3_12_0::detail::cbor_tag_handler_t) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:9964
3 3 1 :

['void nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::byte_swap (int&)']

3 3 boolnlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_number (nlohmann::json_abi_v3_12_0::detail::input_format_t,int&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12701
3 3 1 :

['void nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::byte_swap (double&)']

3 3 boolnlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_number (nlohmann::json_abi_v3_12_0::detail::input_format_t,double&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12701
3 3 1 :

['void nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::byte_swap (long&)']

3 3 boolnlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_number (nlohmann::json_abi_v3_12_0::detail::input_format_t,long&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12701
3 3 1 :

['void nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::byte_swap (unsigned long&)']

3 3 boolnlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_number (nlohmann::json_abi_v3_12_0::detail::input_format_t,unsignedlong&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12701
0 0 None 137 137 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_bson(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:15885
0 0 None 137 137 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_bson(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:15885
0 0 None 137 137 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_bson(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:15885
0 0 None 137 137 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_bson(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:15885
0 0 None 137 137 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_bson(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:15885
0 0 None 137 137 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_bson(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:15885
0 0 None 137 137 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_bson(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:15885

Runtime coverage analysis

Covered functions
226
Functions that are reachable but not covered
265
Reachable functions
689
Percentage of reachable functions covered
61.54%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/json/tests/src/fuzzer-parse_bson.cpp 1
/src/json/tests/../single_include/nlohmann/json.hpp 368
/usr/local/bin/../include/c++/v1/__exception/exception.h 2

Fuzzer: parse_msgpack_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 671 58.6%
gold [1:9] 20 1.74%
yellow [10:29] 5 0.43%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 448 39.1%
All colors 1144 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
12 12 1 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_ignore_noop()']

16 252 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::sax_parse(nlohmann::json_abi_v3_12_0::detail::input_format_t,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>*,bool,nlohmann::json_abi_v3_12_0::detail::cbor_tag_handler_t) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:9964
0 3 2 :

['std::__1::numeric_limits ::max[abi:ne180100]()', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned int, bool)']

0 839 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_msgpack(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:16527
0 3 2 :

['std::__1::numeric_limits ::max[abi:ne180100]()', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned int, bool)']

0 237 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_msgpack(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:16414
0 3 2 :

['std::__1::numeric_limits ::max[abi:ne180100]()', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned int, bool)']

0 10 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_msgpack(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:16485
0 3 2 :

['std::__1::numeric_limits ::max[abi:ne180100]()', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned int, bool)']

0 5 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_msgpack(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:16385
0 0 None 0 0 boolnlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>::parse_error (unsignedlong,std::__1::basic_string ,std::__1::allocator >const&,nlohmann::json_abi_v3_12_0::detail::parse_errorconst&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:9027

Runtime coverage analysis

Covered functions
243
Functions that are reachable but not covered
208
Reachable functions
671
Percentage of reachable functions covered
69.0%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/json/tests/src/fuzzer-parse_msgpack.cpp 1
/src/json/tests/../single_include/nlohmann/json.hpp 359
/usr/local/bin/../include/c++/v1/__exception/exception.h 2

Fuzzer: parse_cbor_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 659 55.9%
gold [1:9] 12 1.01%
yellow [10:29] 28 2.37%
greenyellow [30:49] 9 0.76%
lawngreen 50+ 469 39.8%
All colors 1177 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
12 12 1 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_ignore_noop()']

16 252 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::sax_parse(nlohmann::json_abi_v3_12_0::detail::input_format_t,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>*,bool,nlohmann::json_abi_v3_12_0::detail::cbor_tag_handler_t) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:9964
0 16 1 :

['nlohmann::json_abi_v3_12_0::byte_container_with_subtype > >::subtype() const']

0 63 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_cbor(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:16126
0 9 6 :

['void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned short, bool)', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned long, bool)', 'std::__1::numeric_limits ::max[abi:ne180100]()', 'std::__1::numeric_limits ::max[abi:ne180100]()', 'std::__1::numeric_limits ::max[abi:ne180100]()', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned int, bool)']

0 835 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_cbor(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:16195
0 6 4 :

['std::__1::numeric_limits ::max[abi:ne180100]()', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned long, bool)', 'std::__1::numeric_limits ::max[abi:ne180100]()', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned int, bool)']

0 235 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_cbor(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:16098
0 6 4 :

['std::__1::numeric_limits ::max[abi:ne180100]()', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned long, bool)', 'std::__1::numeric_limits ::max[abi:ne180100]()', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned int, bool)']

0 10 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_cbor(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:16060
0 6 4 :

['std::__1::numeric_limits ::max[abi:ne180100]()', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned long, bool)', 'std::__1::numeric_limits ::max[abi:ne180100]()', 'void nlohmann::json_abi_v3_12_0::detail::binary_writer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_number (unsigned int, bool)']

0 10 nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::write_cbor(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:16161
0 0 None 4 460 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_cbor_binary(nlohmann::json_abi_v3_12_0::byte_container_with_subtype >>&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:10908
0 0 None 0 450 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_cbor_string(std::__1::basic_string ,std::__1::allocator >&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:10808
0 0 None 0 0 boolnlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>::parse_error (unsignedlong,std::__1::basic_string ,std::__1::allocator >const&,nlohmann::json_abi_v3_12_0::detail::parse_errorconst&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:9027

Runtime coverage analysis

Covered functions
236
Functions that are reachable but not covered
225
Reachable functions
663
Percentage of reachable functions covered
66.06%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/json/tests/src/fuzzer-parse_cbor.cpp 1
/src/json/tests/../single_include/nlohmann/json.hpp 355
/usr/local/bin/../include/c++/v1/__exception/exception.h 2

Fuzzer: parse_ubjson_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 807 56.0%
gold [1:9] 52 3.60%
yellow [10:29] 13 0.90%
greenyellow [30:49] 7 0.48%
lawngreen 50+ 562 39.0%
All colors 1441 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
1434 2346 20 :

['nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::start_array(unsigned long)', 'std::__1::vector >::at(unsigned long)', 'std::__1::vector >::begin[abi:ne180100]()', 'std::__1::numeric_limits ::max[abi:ne180100]()', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::number_unsigned(unsigned long)', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::start_object(unsigned long)', 'std::__1::__wrap_iter ::operator*[abi:ne180100]() const', 'std::__1::vector >::empty[abi:ne180100]() const', 'std::__1::vector >::vector[abi:ne180100]()', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::end_array()', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::out_of_range const&)', 'std::__1::vector >::end[abi:ne180100]()', 'std::__1::vector >::size[abi:ne180100]() const', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_ubjson_ndarray_size(std::__1::vector >&)', '_ZN8nlohmann16json_abi_v3_12_06detail12out_of_range6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_iRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::key(std::__1::basic_string , std::__1::allocator >&)', 'std::__1::__wrap_iter ::operator++[abi:ne180100]()', 'bool std::__1::operator!=[abi:ne180100] (std::__1::__wrap_iter const&, std::__1::__wrap_iter const&)', 'nlohmann::json_abi_v3_12_0::detail::out_of_range::~out_of_range()', 'std::__1::vector >::~vector[abi:ne180100]()']

1438 2666 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_size_value(unsignedlong&,bool&,unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:11980
386 386 4 :

['nlohmann::json_abi_v3_12_0::byte_container_with_subtype > >::~byte_container_with_subtype()', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::binary(nlohmann::json_abi_v3_12_0::byte_container_with_subtype > >&)', 'nlohmann::json_abi_v3_12_0::byte_container_with_subtype > >::byte_container_with_subtype()', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_binary (nlohmann::json_abi_v3_12_0::detail::input_format_t, unsigned long, nlohmann::json_abi_v3_12_0::byte_container_with_subtype > >&)']

386 386 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_array() call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12385
219 440 2 :

['bool nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_number (nlohmann::json_abi_v3_12_0::detail::input_format_t, unsigned short&)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_string (nlohmann::json_abi_v3_12_0::detail::input_format_t, unsigned short, std::__1::basic_string , std::__1::allocator >&)']

219 440 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_string(std::__1::basic_string ,std::__1::allocator >&,bool) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:11725
219 440 2 :

['bool nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_number (nlohmann::json_abi_v3_12_0::detail::input_format_t, unsigned int&)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_string (nlohmann::json_abi_v3_12_0::detail::input_format_t, unsigned int, std::__1::basic_string , std::__1::allocator >&)']

219 440 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_string(std::__1::basic_string ,std::__1::allocator >&,bool) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:11735
219 359 2 :

['bool nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_number (nlohmann::json_abi_v3_12_0::detail::input_format_t, unsigned short&)', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::number_unsigned(unsigned long)']

219 359 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_value(unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12194
219 359 2 :

['bool nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_number (nlohmann::json_abi_v3_12_0::detail::input_format_t, unsigned int&)', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::number_unsigned(unsigned long)']

219 359 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_value(unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12204
219 359 2 :

['nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::number_unsigned(unsigned long)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_number (nlohmann::json_abi_v3_12_0::detail::input_format_t, unsigned long&)']

219 359 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_value(unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12214
131 1324 7 :

['_ZN8nlohmann16json_abi_v3_12_06detail13binary_writerINS0_10basic_jsonINSt3__13mapENS4_6vectorENS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEblmdSA_NS0_14adl_serializerENS6_IhNSA_IhEEEEvEEhE31write_number_with_ubjson_prefixImTnNS4_9enable_ifIXsr3std11is_unsignedIT_EE5valueEiE4typeELi0EEEvSK_bb', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::~basic_json()', '_ZN8nlohmann16json_abi_v3_12_010basic_jsonINSt3__13mapENS2_6vectorENS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEblmdS8_NS0_14adl_serializerENS4_IhNS8_IhEEEEvEC2IRKllTnNS2_9enable_ifIXaantsr6detail13is_basic_jsonIT0_EE5valuesr6detail18is_compatible_typeISE_SJ_EE5valueEiE4typeELi0EEEOT_', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::dump(int, char, bool, nlohmann::json_abi_v3_12_0::detail::error_handler_t) const', 'std::__1::basic_string , std::__1::allocator >::size[abi:ne180100]() const', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator >::operator[][abi:ne180100](unsigned long) const']

131 1328 _ZN8nlohmann16json_abi_v3_12_06detail13binary_writerINS0_10basic_jsonINSt3__13mapENS4_6vectorENS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEblmdSA_NS0_14adl_serializerENS6_IhNSA_IhEEEEvEEhE31write_number_with_ubjson_prefixIlTnNS4_9enable_ifIXaasr3std9is_signedIT_EE5valuentsr3std17is_floating_pointISK_EE5valueEiE4typeELi0EEEvSK_bb call site: 01070 /src/json/tests/../single_include/nlohmann/json.hpp:17302
28 28 1 :

['std::__1::basic_string , std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat , std::__1::allocator >, char const (&) [10], std::__1::basic_string , std::__1::allocator >&, char const (&) [41]>(char const (&) [10], std::__1::basic_string , std::__1::allocator >&, char const (&) [41])']

32 238 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_size_type(std::__1::pair &,bool) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12081
5 5 1 :

['nlohmann::json_abi_v3_12_0::detail::serializer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> >::remove_sign(long)']

5 10 _ZN8nlohmann16json_abi_v3_12_06detail10serializerINS0_10basic_jsonINSt3__13mapENS4_6vectorENS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEblmdSA_NS0_14adl_serializerENS6_IhNSA_IhEEEEvEEE12dump_integerImTnNS4_9enable_ifIXoooooosr3std11is_integralIT_EE5valuesr3std7is_sameISK_mEE5valuesr3std7is_sameISK_lEE5valuesr3std7is_sameISK_hEE5valueEiE4typeELi0EEEvSK_ call site: 01147 /src/json/tests/../single_include/nlohmann/json.hpp:19556
4 381 16 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'std::__1::pair , std::__1::allocator > > const* std::__1::lower_bound[abi:ne180100] , std::__1::allocator > > const*, unsigned long, nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_ubjson_array()::{lambda(std::__1::pair , std::__1::allocator > > const&, unsigned long)#1}>(nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_ubjson_array()::{lambda(std::__1::pair , std::__1::allocator > > const&, unsigned long)#1}, nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_ubjson_array()::{lambda(std::__1::pair , std::__1::allocator > > const&, unsigned long)#1}, unsigned long const&, nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_ubjson_array()::{lambda(std::__1::pair , std::__1::allocator > > const&, unsigned long)#1})', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', 'std::__1::array , std::__1::allocator > >, 12ul>::end[abi:ne180100]() const', '_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ne180100ILi0EEEPKc', 'std::__1::array , std::__1::allocator > >, 12ul>::begin[abi:ne180100]() const', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'std::__1::basic_string , std::__1::allocator >::operator=[abi:ne180100](char const*)', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'std::__1::basic_string , std::__1::allocator >::basic_string(std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::key(std::__1::basic_string , std::__1::allocator >&)', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::string(std::__1::basic_string , std::__1::allocator >&)', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::end_object()']

4 2650 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_array() call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12341
4 210 7 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', '_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ne180100ILi0EEEPKc', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()']

4 210 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_size_value(unsignedlong&,bool&,unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:11866

Runtime coverage analysis

Covered functions
282
Functions that are reachable but not covered
283
Reachable functions
804
Percentage of reachable functions covered
64.8%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/json/tests/src/fuzzer-parse_ubjson.cpp 1
/src/json/tests/../single_include/nlohmann/json.hpp 436
/usr/local/bin/../include/c++/v1/__exception/exception.h 2

Fuzzer: parse_bjdata_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 593 41.1%
gold [1:9] 53 3.67%
yellow [10:29] 17 1.17%
greenyellow [30:49] 36 2.49%
lawngreen 50+ 742 51.4%
All colors 1441 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
528 1324 7 :

['_ZN8nlohmann16json_abi_v3_12_06detail13binary_writerINS0_10basic_jsonINSt3__13mapENS4_6vectorENS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEblmdSA_NS0_14adl_serializerENS6_IhNSA_IhEEEEvEEhE31write_number_with_ubjson_prefixImTnNS4_9enable_ifIXsr3std11is_unsignedIT_EE5valueEiE4typeELi0EEEvSK_bb', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::~basic_json()', '_ZN8nlohmann16json_abi_v3_12_010basic_jsonINSt3__13mapENS2_6vectorENS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEblmdS8_NS0_14adl_serializerENS4_IhNS8_IhEEEEvEC2IRKllTnNS2_9enable_ifIXaantsr6detail13is_basic_jsonIT0_EE5valuesr6detail18is_compatible_typeISE_SJ_EE5valueEiE4typeELi0EEEOT_', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::dump(int, char, bool, nlohmann::json_abi_v3_12_0::detail::error_handler_t) const', 'std::__1::basic_string , std::__1::allocator >::size[abi:ne180100]() const', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator >::operator[][abi:ne180100](unsigned long) const']

528 1328 _ZN8nlohmann16json_abi_v3_12_06detail13binary_writerINS0_10basic_jsonINSt3__13mapENS4_6vectorENS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEblmdSA_NS0_14adl_serializerENS6_IhNSA_IhEEEEvEEhE31write_number_with_ubjson_prefixIlTnNS4_9enable_ifIXaasr3std9is_signedIT_EE5valuentsr3std17is_floating_pointISK_EE5valueEiE4typeELi0EEEvSK_bb call site: 01070 /src/json/tests/../single_include/nlohmann/json.hpp:17302
528 1324 7 :

['nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::~basic_json()', '_ZN8nlohmann16json_abi_v3_12_010basic_jsonINSt3__13mapENS2_6vectorENS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEblmdS8_NS0_14adl_serializerENS4_IhNS8_IhEEEEvEC2IRKmmTnNS2_9enable_ifIXaantsr6detail13is_basic_jsonIT0_EE5valuesr6detail18is_compatible_typeISE_SJ_EE5valueEiE4typeELi0EEEOT_', '_ZN8nlohmann16json_abi_v3_12_06detail13binary_writerINS0_10basic_jsonINSt3__13mapENS4_6vectorENS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEblmdSA_NS0_14adl_serializerENS6_IhNSA_IhEEEEvEEhE31write_number_with_ubjson_prefixImTnNS4_9enable_ifIXsr3std11is_unsignedIT_EE5valueEiE4typeELi0EEEvSK_bb', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::dump(int, char, bool, nlohmann::json_abi_v3_12_0::detail::error_handler_t) const', 'std::__1::basic_string , std::__1::allocator >::size[abi:ne180100]() const', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator >::operator[][abi:ne180100](unsigned long) const']

528 1328 _ZN8nlohmann16json_abi_v3_12_06detail13binary_writerINS0_10basic_jsonINSt3__13mapENS4_6vectorENS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEblmdSA_NS0_14adl_serializerENS6_IhNSA_IhEEEEvEEhE31write_number_with_ubjson_prefixImTnNS4_9enable_ifIXsr3std11is_unsignedIT_EE5valueEiE4typeELi0EEEvSK_bb call site: 01248 /src/json/tests/../single_include/nlohmann/json.hpp:17222
4 210 8 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', '_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ne180100ILi0EEEPKc', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()']

4 210 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_value(unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12154
4 210 8 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', '_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ne180100ILi0EEEPKc', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()']

4 210 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_value(unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12194
4 210 8 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', '_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ne180100ILi0EEEPKc', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()']

4 210 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_value(unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12204
4 210 8 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', '_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ne180100ILi0EEEPKc', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()']

4 210 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_value(unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12214
4 210 6 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()']

4 210 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_value(unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:12224
4 210 10 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', '_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ne180100ILi0EEEPKc', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator >::basic_string[abi:ne180100]()', 'std::__1::basic_string , std::__1::allocator >::operator=[abi:ne180100](std::__1::basic_string , std::__1::allocator >&&)', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const']

4 210 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_size_value(unsignedlong&,bool&,unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:11930
4 210 10 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', '_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ne180100ILi0EEEPKc', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'std::__1::basic_string , std::__1::allocator >::basic_string[abi:ne180100]()', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator >::operator=[abi:ne180100](std::__1::basic_string , std::__1::allocator >&&)', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()']

4 210 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_size_value(unsignedlong&,bool&,unsignedlong) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:11945
4 210 10 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', '_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ne180100ILi0EEEPKc', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'std::__1::basic_string , std::__1::allocator >::basic_string[abi:ne180100]()', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator >::operator=[abi:ne180100](std::__1::basic_string , std::__1::allocator >&&)', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()']

4 210 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_string(std::__1::basic_string ,std::__1::allocator >&,bool) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:11725
4 210 10 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', '_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ne180100ILi0EEEPKc', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'std::__1::basic_string , std::__1::allocator >::basic_string[abi:ne180100]()', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator >::operator=[abi:ne180100](std::__1::basic_string , std::__1::allocator >&&)', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()']

4 210 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_string(std::__1::basic_string ,std::__1::allocator >&,bool) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:11735
4 210 10 :

['nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_token_string() const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', '_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ne180100ILi0EEEPKc', '_ZN8nlohmann16json_abi_v3_12_06detail11parse_error6createIDnTnNSt3__19enable_ifIXsr21is_basic_json_contextIT_EE5valueEiE4typeELi0EEES2_imRKNS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEES6_', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::binary_reader , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::exception_message(nlohmann::json_abi_v3_12_0::detail::input_format_t, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'std::__1::basic_string , std::__1::allocator >::basic_string[abi:ne180100]()', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator >::operator=[abi:ne180100](std::__1::basic_string , std::__1::allocator >&&)', 'nlohmann::json_abi_v3_12_0::detail::parse_error::~parse_error()']

4 210 nlohmann::json_abi_v3_12_0::detail::binary_reader ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >,nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>::get_ubjson_string(std::__1::basic_string ,std::__1::allocator >&,bool) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:11745

Runtime coverage analysis

Covered functions
331
Functions that are reachable but not covered
216
Reachable functions
804
Percentage of reachable functions covered
73.13%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/json/tests/src/fuzzer-parse_bjdata.cpp 1
/src/json/tests/../single_include/nlohmann/json.hpp 436
/usr/local/bin/../include/c++/v1/__exception/exception.h 2

Fuzzer: parse_afl_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 547 48.3%
gold [1:9] 16 1.41%
yellow [10:29] 3 0.26%
greenyellow [30:49] 1 0.08%
lawngreen 50+ 564 49.8%
All colors 1131 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
234 2388 9 :

['std::__1::function , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>&)>::function(std::__1::function , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>&)> const&)', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_callback_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::is_discarded() const', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::basic_json(decltype(nullptr))', 'std::__1::function , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>&)>::~function()', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_callback_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::json_sax_dom_callback_parser(nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>&, std::__1::function , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>&)>, bool, nlohmann::json_abi_v3_12_0::detail::lexer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >*)', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_callback_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::~json_sax_dom_callback_parser()', 'bool nlohmann::json_abi_v3_12_0::detail::parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::sax_parse_internal , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >(nlohmann::json_abi_v3_12_0::detail::json_sax_dom_callback_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >*)', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_callback_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::is_errored() const']

238 3362 nlohmann::json_abi_v3_12_0::detail::parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>::parse(bool,nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:13014
234 2387 9 :

['std::__1::function , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>&)>::function(std::__1::function , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>&)> const&)', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_callback_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >::json_sax_dom_callback_parser(nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>&, std::__1::function , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>&)>, bool, nlohmann::json_abi_v3_12_0::detail::lexer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >*)', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::is_discarded() const', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::basic_json(decltype(nullptr))', 'std::__1::function , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>&)>::~function()', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_callback_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >::~json_sax_dom_callback_parser()', 'bool nlohmann::json_abi_v3_12_0::detail::parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >::sax_parse_internal , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >(nlohmann::json_abi_v3_12_0::detail::json_sax_dom_callback_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >*)', 'nlohmann::json_abi_v3_12_0::detail::json_sax_dom_callback_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >::is_errored() const', 'bool nlohmann::json_abi_v3_12_0::detail::json_sax_dom_callback_parser , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >::parse_error (unsigned long, std::__1::basic_string , std::__1::allocator > const&, nlohmann::json_abi_v3_12_0::detail::parse_error const&)']

238 3367 nlohmann::json_abi_v3_12_0::detail::parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >::parse(bool,nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:13014
0 301 3 :

['nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::operator=(nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>)', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::~basic_json()', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::basic_json(nlohmann::json_abi_v3_12_0::detail::value_t)']

0 313 nlohmann::json_abi_v3_12_0::detail::parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >::parse(bool,nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:13056
0 301 3 :

['nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::operator=(nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>)', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::~basic_json()', 'nlohmann::json_abi_v3_12_0::basic_json , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::basic_json(nlohmann::json_abi_v3_12_0::detail::value_t)']

0 313 nlohmann::json_abi_v3_12_0::detail::parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>::parse(bool,nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>&) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:13056
0 16 1 :

['nlohmann::json_abi_v3_12_0::detail::lexer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::get()']

0 16 nlohmann::json_abi_v3_12_0::detail::lexer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>::skip_bom() call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:8565
0 5 1 :

['nlohmann::json_abi_v3_12_0::detail::serializer , std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> >::remove_sign(long)']

0 10 _ZN8nlohmann16json_abi_v3_12_06detail10serializerINS0_10basic_jsonINSt3__13mapENS4_6vectorENS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEblmdSA_NS0_14adl_serializerENS6_IhNSA_IhEEEEvEEE12dump_integerImTnNS4_9enable_ifIXoooooosr3std11is_integralIT_EE5valuesr3std7is_sameISK_mEE5valuesr3std7is_sameISK_lEE5valuesr3std7is_sameISK_hEE5valueEiE4typeELi0EEEvSK_ call site: 00783 /src/json/tests/../single_include/nlohmann/json.hpp:19556
0 0 None 206 267 nlohmann::json_abi_v3_12_0::detail::serializer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>>::dump_escaped(std::__1::basic_string ,std::__1::allocator >const&,bool) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:19276
0 0 None 206 267 nlohmann::json_abi_v3_12_0::detail::serializer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>>::dump_escaped(std::__1::basic_string ,std::__1::allocator >const&,bool) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:19305
0 0 3 :

['std::__1::basic_string , std::__1::allocator >::resize(unsigned long, char)', 'std::__1::basic_string , std::__1::allocator >::size[abi:ne180100]() const', 'std::__1::basic_string , std::__1::allocator >::c_str[abi:ne180100]() const']

0 1218 nlohmann::json_abi_v3_12_0::detail::serializer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>>::dump(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&,bool,bool,unsignedint,unsignedint) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:18933
0 0 3 :

['std::__1::basic_string , std::__1::allocator >::resize(unsigned long, char)', 'std::__1::basic_string , std::__1::allocator >::size[abi:ne180100]() const', 'std::__1::basic_string , std::__1::allocator >::c_str[abi:ne180100]() const']

0 732 nlohmann::json_abi_v3_12_0::detail::serializer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>>::dump(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&,bool,bool,unsignedint,unsignedint) call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:19006
0 0 None 0 370 nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>::dump(int,char,bool,nlohmann::json_abi_v3_12_0::detail::error_handler_t)const call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:21411
0 0 None 0 243 nlohmann::json_abi_v3_12_0::detail::lexer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>::scan_string() call site: 00000 /src/json/tests/../single_include/nlohmann/json.hpp:7400

Runtime coverage analysis

Covered functions
264
Functions that are reachable but not covered
218
Reachable functions
730
Percentage of reachable functions covered
70.14%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/json/tests/src/fuzzer-parse_json.cpp 1
/src/json/tests/../single_include/nlohmann/json.hpp 388
/usr/local/bin/../include/c++/v1/__exception/exception.h 2

Analyses and suggestions

Optimal target analysis

Remaining optimal interesting functions

The following table shows a list of functions that are optimal targets. Optimal targets are identified by finding the functions that in combination, yield a high code coverage.

Func name Functions filename Arg count Args Function depth hitcount instr count bb count cyclomatic complexity Reachable functions Incoming references total cyclomatic complexity Unreached complexity
nlohmann::json_abi_v3_12_0::detail::binary_writer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,unsignedchar>::calc_bson_array_size(std::__1::vector ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,std::__1::allocator ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>>>const&)::{lambda(unsignedlong,nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&)#1}::operator()(unsignedlong,nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&)const /src/json/tests/../single_include/nlohmann/json.hpp 3 ['N/A', 'size_t', 'N/A'] 11 0 53 6 6 81 0 174 78
_ZNK8nlohmann16json_abi_v3_12_010basic_jsonINSt3__13mapENS2_6vectorENS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEblmdS8_NS0_14adl_serializerENS4_IhNS8_IhEEEEvEcvT_INS2_17basic_string_viewIcS7_EETnNS2_9enable_ifIXsr6detail11conjunctionINS0_6detail8negationINS2_10is_pointerISF_EEEENSL_INS2_7is_sameISF_DnEEEENSL_INSP_ISF_NSK_8json_refISE_EEEEEENSL_INSP_ISF_cEEEENSL_INSK_13is_basic_jsonISF_EEEENSL_INSP_ISF_St16initializer_listIcEEEEENSK_16is_detected_lazyINSK_21get_template_functionEJRKSE_SF_EEEEE5valueEiE4typeELi0EEEv /src/json/tests/../single_include/nlohmann/json.hpp 1 ['N/A'] 14 0 24 3 2 71 0 160 41

Implementing fuzzers that target the above functions will improve reachability such that it becomes:

Functions statically reachable by fuzzers
95.0%
692 / 726
Cyclomatic complexity statically reachable by fuzzers
99.0%
6528 / 6597

All functions overview

If you implement fuzzers for these functions, the status of all functions in the project will be:

Func name Functions filename Args Function call depth Reached by Fuzzers Runtime reached by Fuzzers Combined reached by Fuzzers Fuzzers runtime hit Func lines hit % I Count BB Count Cyclomatic complexity Functions reached Reached by functions Accumulated cyclomatic complexity Undiscovered complexity

Fuzz engine guidance

This sections provides heuristics that can be used as input to a fuzz engine when running a given fuzz target. The current focus is on providing input that is usable by libFuzzer.

/src/json/tests/src/fuzzer-parse_bson.cpp

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_to(short&, nlohmann::json_abi_v3_12_0::detail::input_format_t, char const*)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_to(unsigned int&, nlohmann::json_abi_v3_12_0::detail::input_format_t, char const*)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [22], std::__1::basic_string, std::__1::allocator > >(char const (&) [22], std::__1::basic_string, std::__1::allocator >&&)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_to(float&, nlohmann::json_abi_v3_12_0::detail::input_format_t, char const*)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_to(signed char&, nlohmann::json_abi_v3_12_0::detail::input_format_t, char const*)', 'nlohmann::json_abi_v3_12_0::detail::binary_writer, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_bson_array(std::__1::basic_string, std::__1::allocator > const&, std::__1::vector, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, std::__1::allocator, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> > > const&)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [24], std::__1::basic_string, std::__1::allocator > >(char const (&) [24], std::__1::basic_string, std::__1::allocator >&&)', 'nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::parse_bson_element_internal(unsigned long, unsigned long)', 'nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::json_value::json_value(nlohmann::json_abi_v3_12_0::detail::value_t)', 'nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::from_bson > const&>(std::__1::vector > const&, bool, bool)']

/src/json/tests/src/fuzzer-parse_msgpack.cpp

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::parse_msgpack_internal()', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_number(nlohmann::json_abi_v3_12_0::detail::input_format_t, unsigned int&)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [22], std::__1::basic_string, std::__1::allocator > >(char const (&) [22], std::__1::basic_string, std::__1::allocator >&&)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [17], std::__1::basic_string, std::__1::allocator >&>(char const (&) [17], std::__1::basic_string, std::__1::allocator >&)', 'nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>* nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::handle_value(unsigned long&)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [24], std::__1::basic_string, std::__1::allocator > >(char const (&) [24], std::__1::basic_string, std::__1::allocator >&&)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [38], std::__1::basic_string, std::__1::allocator > >(char const (&) [38], std::__1::basic_string, std::__1::allocator >&&)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_number(nlohmann::json_abi_v3_12_0::detail::input_format_t, float&)', 'nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::json_value::json_value(nlohmann::json_abi_v3_12_0::detail::value_t)', 'nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::from_msgpack > const&>(std::__1::vector > const&, bool, bool)']

/src/json/tests/src/fuzzer-parse_cbor.cpp

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_to(short&, nlohmann::json_abi_v3_12_0::detail::input_format_t, char const*)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [22], std::__1::basic_string, std::__1::allocator > >(char const (&) [22], std::__1::basic_string, std::__1::allocator >&&)', 'nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::parse_cbor_internal(bool, nlohmann::json_abi_v3_12_0::detail::cbor_tag_handler_t)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_to(signed char&, nlohmann::json_abi_v3_12_0::detail::input_format_t, char const*)', 'nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::parse_cbor_internal(bool, nlohmann::json_abi_v3_12_0::detail::cbor_tag_handler_t)', 'nlohmann::json_abi_v3_12_0::detail::binary_writer, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_cbor(nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> const&)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [38], std::__1::basic_string, std::__1::allocator > >(char const (&) [38], std::__1::basic_string, std::__1::allocator >&&)', 'nlohmann::json_abi_v3_12_0::detail::binary_writer, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_cbor(nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> const&)', 'nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::json_value::json_value(nlohmann::json_abi_v3_12_0::detail::value_t)', 'nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::from_cbor > const&>(std::__1::vector > const&, bool, bool, nlohmann::json_abi_v3_12_0::detail::cbor_tag_handler_t)']

/src/json/tests/src/fuzzer-parse_ubjson.cpp

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_to(unsigned int&, nlohmann::json_abi_v3_12_0::detail::input_format_t, char const*)', 'nlohmann::json_abi_v3_12_0::detail::serializer, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> >::dump(nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> const&, bool, bool, unsigned int, unsigned int)', 'nlohmann::json_abi_v3_12_0::detail::binary_writer, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, unsigned char>::write_ubjson(nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> const&, bool, bool, bool, bool, nlohmann::json_abi_v3_12_0::detail::bjdata_version_t)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_number(nlohmann::json_abi_v3_12_0::detail::input_format_t, float&)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_number(nlohmann::json_abi_v3_12_0::detail::input_format_t, signed char&)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [39], std::__1::basic_string, std::__1::allocator > >(char const (&) [39], std::__1::basic_string, std::__1::allocator >&&)', 'nlohmann::json_abi_v3_12_0::detail::value_in_range_of_impl1::test(long)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_number(nlohmann::json_abi_v3_12_0::detail::input_format_t, short&)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_number(nlohmann::json_abi_v3_12_0::detail::input_format_t, unsigned char&)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [29], std::__1::basic_string, std::__1::allocator >, char const (&) [5], std::__1::basic_string, std::__1::allocator > >(char const (&) [29], std::__1::basic_string, std::__1::allocator >&&, char const (&) [5], std::__1::basic_string, std::__1::allocator >&&)']

/src/json/tests/src/fuzzer-parse_bjdata.cpp

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_to(unsigned int&, nlohmann::json_abi_v3_12_0::detail::input_format_t, char const*)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [39], std::__1::basic_string, std::__1::allocator > >(char const (&) [39], std::__1::basic_string, std::__1::allocator >&&)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_to(float&, nlohmann::json_abi_v3_12_0::detail::input_format_t, char const*)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_to(signed char&, nlohmann::json_abi_v3_12_0::detail::input_format_t, char const*)', 'bool nlohmann::json_abi_v3_12_0::detail::binary_reader, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >, nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > > >::get_to(short&, nlohmann::json_abi_v3_12_0::detail::input_format_t, char const*)', '_ZN8nlohmann16json_abi_v3_12_06detail13binary_writerINS0_10basic_jsonINSt3__13mapENS4_6vectorENS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEblmdSA_NS0_14adl_serializerENS6_IhNSA_IhEEEEvEEhE31write_number_with_ubjson_prefixIlTnNS4_9enable_ifIXaasr3std9is_signedIT_EE5valuentsr3std17is_floating_pointISK_EE5valueEiE4typeELi0EEEvSK_bb', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [32], std::__1::basic_string, std::__1::allocator > const&>(char const (&) [32], std::__1::basic_string, std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::detail::type_error::type_error(int, char const*)', '_ZN8nlohmann16json_abi_v3_12_06detail13binary_writerINS0_10basic_jsonINSt3__13mapENS4_6vectorENS4_12basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEblmdSA_NS0_14adl_serializerENS6_IhNSA_IhEEEEvEEhE31write_number_with_ubjson_prefixImTnNS4_9enable_ifIXsr3std11is_unsignedIT_EE5valueEiE4typeELi0EEEvSK_bb', 'nlohmann::json_abi_v3_12_0::detail::iter_impl, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> const>::operator*() const']

/src/json/tests/src/fuzzer-parse_json.cpp

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['void nlohmann::json_abi_v3_12_0::detail::external_constructor<(nlohmann::json_abi_v3_12_0::detail::value_t)6>::construct, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> >(nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>&, nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::number_unsigned_t)', 'nlohmann::json_abi_v3_12_0::detail::parser, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>, nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter > >::exception_message(nlohmann::json_abi_v3_12_0::detail::lexer_base, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void> >::token_type, std::__1::basic_string, std::__1::allocator > const&)', 'nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::json_value::json_value(std::__1::basic_string, std::__1::allocator > const&)', '_ZN8nlohmann16json_abi_v3_12_010basic_jsonINSt3__13mapENS2_6vectorENS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEblmdS8_NS0_14adl_serializerENS4_IhNS8_IhEEEEvEC2IRSA_SA_TnNS2_9enable_ifIXaantsr6detail13is_basic_jsonIT0_EE5valuesr6detail18is_compatible_typeISE_SI_EE5valueEiE4typeELi0EEEOT_', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [23], std::__1::basic_string, std::__1::allocator > >(char const (&) [23], std::__1::basic_string, std::__1::allocator >&&)', 'nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>::operator=(nlohmann::json_abi_v3_12_0::basic_json, std::__1::allocator >, bool, long, unsigned long, double, std::__1::allocator, nlohmann::json_abi_v3_12_0::adl_serializer, std::__1::vector >, void>)', 'unsigned long nlohmann::json_abi_v3_12_0::detail::concat_length(char const*, char const* const&)', 'nlohmann::json_abi_v3_12_0::detail::parse_error::parse_error(int, unsigned long, char const*)', 'nlohmann::json_abi_v3_12_0::detail::out_of_range::out_of_range(int, char const*)', 'std::__1::basic_string, std::__1::allocator > nlohmann::json_abi_v3_12_0::detail::concat, std::__1::allocator >, char const (&) [29], std::__1::basic_string, std::__1::allocator >, char const (&) [5], std::__1::basic_string, std::__1::allocator > >(char const (&) [29], std::__1::basic_string, std::__1::allocator >&&, char const (&) [5], std::__1::basic_string, std::__1::allocator >&&)']

Runtime coverage analysis

This section shows analysis of runtime coverage data.

For futher technical details on how this section is generated, please see the Glossary .

Complex functions with low coverage

Func name Function total lines Lines covered at runtime percentage covered Reached by fuzzers
nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>::json_value::json_value(nlohmann::json_abi_v3_12_0::detail::value_t) 60 24 40.0% ['parse_bjdata_fuzzer', 'parse_cbor_fuzzer', 'parse_bson_fuzzer', 'parse_afl_fuzzer', 'parse_ubjson_fuzzer', 'parse_msgpack_fuzzer']
nlohmann::json_abi_v3_12_0::detail::serializer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>>::dump(nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>const&,bool,bool,unsignedint,unsignedint) 216 99 45.83% ['parse_ubjson_fuzzer', 'parse_afl_fuzzer', 'parse_bjdata_fuzzer']
nlohmann::json_abi_v3_12_0::detail::parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >::parse(bool,nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>&) 40 16 40.0% ['parse_afl_fuzzer']
nlohmann::json_abi_v3_12_0::detail::serializer ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>>::dump_escaped(std::__1::basic_string ,std::__1::allocator >const&,bool) 189 90 47.61% ['parse_ubjson_fuzzer', 'parse_afl_fuzzer', 'parse_bjdata_fuzzer']
nlohmann::json_abi_v3_12_0::detail::parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>::parse(bool,nlohmann::json_abi_v3_12_0::basic_json ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>&) 40 11 27.50% ['parse_afl_fuzzer']
boolnlohmann::json_abi_v3_12_0::detail::parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>::sax_parse_internal ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>>(nlohmann::json_abi_v3_12_0::detail::json_sax_dom_parser ,std::__1::allocator >,bool,long,unsignedlong,double,std::__1::allocator,nlohmann::json_abi_v3_12_0::adl_serializer,std::__1::vector >,void>,nlohmann::json_abi_v3_12_0::detail::iterator_input_adapter >>*) 230 125 54.34% ['parse_afl_fuzzer']

Files and Directories in report

This section shows which files and directories are considered in this report. The main reason for showing this is fuzz introspector may include more code in the reasoning than is desired. This section helps identify if too many files/directories are included, e.g. third party code, which may be irrelevant for the threat model. In the event too much is included, fuzz introspector supports a configuration file that can exclude data from the report. See the following link for more information on how to create a config file: link

Files in report

Source file Reached by Covered by
[] []
/src/json/tests/src/fuzzer-parse_bson.cpp ['parse_bson_fuzzer'] ['parse_bson_fuzzer']
/src/json/tests/src/fuzzer-parse_ubjson.cpp ['parse_ubjson_fuzzer'] ['parse_ubjson_fuzzer']
/src/json/tests/../single_include/nlohmann/json.hpp ['parse_bson_fuzzer', 'parse_msgpack_fuzzer', 'parse_cbor_fuzzer', 'parse_ubjson_fuzzer', 'parse_bjdata_fuzzer', 'parse_afl_fuzzer'] []
/src/json/tests/src/fuzzer-parse_json.cpp ['parse_afl_fuzzer'] ['parse_afl_fuzzer']
/src/json/tests/src/fuzzer-parse_cbor.cpp ['parse_cbor_fuzzer'] ['parse_cbor_fuzzer']
/src/json/tests/src/fuzzer-parse_bjdata.cpp ['parse_bjdata_fuzzer'] ['parse_bjdata_fuzzer']
/src/json/tests/src/fuzzer-parse_msgpack.cpp ['parse_msgpack_fuzzer'] ['parse_msgpack_fuzzer']
/usr/local/bin/../include/c++/v1/__exception/exception.h ['parse_bson_fuzzer', 'parse_msgpack_fuzzer', 'parse_cbor_fuzzer', 'parse_ubjson_fuzzer', 'parse_bjdata_fuzzer', 'parse_afl_fuzzer'] []
/usr/local/bin/../include/c++/v1/stdexcept [] []
/usr/local/bin/../include/c++/v1/string [] []

Directories in report

Directory
/usr/local/bin/../include/c++/v1/__exception/
/src/json/tests/src/
/src/json/tests/../single_include/nlohmann/
/usr/local/bin/../include/c++/v1/