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

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
166 0 EP call site: 00000 __clang_call_terminate

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 crow::json::load(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) [function] [call site] 00001
2 crow::json::load(char const*, unsigned long) [function] [call site] 00002
3 crow::json::load_nocopy_internal(char*, unsigned long) [function] [call site] 00003
4 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::Parser(char*, unsigned long) [function] [call site] 00004
4 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::parse() [function] [call site] 00005
5 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::ws_skip() [function] [call site] 00006
5 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_value(unsigned int) [function] [call site] 00007
6 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_list(unsigned int) [function] [call site] 00008
7 crow::json::rvalue::rvalue(crow::json::type) [function] [call site] 00009
8 crow::json::detail::r_string::r_string() [function] [call site] 00010
8 __clang_call_terminate [call site] 00011
9 __cxa_begin_catch [call site] 00012
7 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::consume(char) [function] [call site] 00013
7 crow::json::rvalue::set_error() [function] [call site] 00014
7 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::ws_skip() [function] [call site] 00015
7 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_value(unsigned int) [function] [call site] 00016
8 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_object(unsigned int) [function] [call site] 00017
9 crow::json::rvalue::rvalue(crow::json::type) [function] [call site] 00018
9 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::consume(char) [function] [call site] 00019
9 crow::json::rvalue::set_error() [function] [call site] 00020
9 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::ws_skip() [function] [call site] 00021
9 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_string() [function] [call site] 00022
10 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::consume(char) [function] [call site] 00023
10 crow::json::rvalue::rvalue() [function] [call site] 00024
11 crow::json::detail::r_string::r_string() [function] [call site] 00025
11 __clang_call_terminate [call site] 00026
10 crow::json::rvalue::rvalue(crow::json::type, char*, char*) [function] [call site] 00027
11 crow::json::detail::r_string::r_string() [function] [call site] 00028
11 crow::json::rvalue::determine_num_type() [function] [call site] 00029
12 memchr [call site] 00030
12 memchr [call site] 00031
12 memchr [call site] 00032
11 __clang_call_terminate [call site] 00033
10 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_string()::{lambda(char)#1}::operator()(char) const [function] [call site] 00034
10 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_string()::{lambda(char)#1}::operator()(char) const [function] [call site] 00035
10 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_string()::{lambda(char)#1}::operator()(char) const [function] [call site] 00036
10 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_string()::{lambda(char)#1}::operator()(char) const [function] [call site] 00037
10 crow::json::rvalue::rvalue() [function] [call site] 00038
10 crow::json::rvalue::rvalue() [function] [call site] 00039
10 crow::json::rvalue::rvalue() [function] [call site] 00040
9 crow::json::rvalue::operator bool() const [function] [call site] 00041
9 crow::json::rvalue::set_error() [function] [call site] 00042
9 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::ws_skip() [function] [call site] 00043
9 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::consume(char) [function] [call site] 00044
9 crow::json::rvalue::set_error() [function] [call site] 00045
9 crow::json::rvalue::s() const [function] [call site] 00046
10 crow::json::rvalue::t() const [function] [call site] 00047
11 __cxa_allocate_exception [call site] 00048
11 std::runtime_error::runtime_error(char const*) [call site] 00049
11 __cxa_throw [call site] 00050
11 std::runtime_error::~runtime_error() [call site] 00051
11 __cxa_free_exception [call site] 00052
10 __cxa_allocate_exception [call site] 00053
10 std::runtime_error::runtime_error(char const*) [call site] 00054
10 __cxa_throw [call site] 00055
10 std::runtime_error::~runtime_error() [call site] 00056
10 __cxa_free_exception [call site] 00057
10 crow::json::rvalue::unescape() const [function] [call site] 00058
11 crow::json::rvalue::unescape() const::{lambda(char)#1}::operator()(char) const [function] [call site] 00059
11 crow::json::rvalue::unescape() const::{lambda(char)#1}::operator()(char) const [function] [call site] 00060
11 crow::json::rvalue::unescape() const::{lambda(char)#1}::operator()(char) const [function] [call site] 00061
11 crow::json::rvalue::unescape() const::{lambda(char)#1}::operator()(char) const [function] [call site] 00062
10 crow::json::detail::r_string::r_string(char*, char*) [function] [call site] 00063
9 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::ws_skip() [function] [call site] 00064
9 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_value(unsigned int) [function] [call site] 00065
10 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_string() [function] [call site] 00066
10 crow::json::rvalue::rvalue(crow::json::type) [function] [call site] 00067
10 crow::json::rvalue::rvalue() [function] [call site] 00068
10 crow::json::rvalue::rvalue(crow::json::type) [function] [call site] 00069
10 crow::json::rvalue::rvalue() [function] [call site] 00070
10 crow::json::rvalue::rvalue(crow::json::type) [function] [call site] 00071
10 crow::json::rvalue::rvalue() [function] [call site] 00072
10 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::decode_number() [function] [call site] 00073
11 crow::json::rvalue::rvalue(crow::json::type, char*, char*) [function] [call site] 00074
11 crow::json::rvalue::rvalue() [function] [call site] 00075
11 crow::json::rvalue::rvalue() [function] [call site] 00076
9 crow::json::rvalue::operator bool() const [function] [call site] 00077
9 crow::json::rvalue::set_error() [function] [call site] 00078
9 crow::json::rvalue::~rvalue() [function] [call site] 00079
10 crow::json::detail::r_string::~r_string() [function] [call site] 00080
9 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::ws_skip() [function] [call site] 00081
9 crow::json::detail::r_string::operator=(crow::json::detail::r_string&&) [function] [call site] 00082
9 crow::json::rvalue::emplace_back(crow::json::rvalue&&) [function] [call site] 00083
10 crow::json::rvalue::rvalue() [function] [call site] 00084
10 crow::json::rvalue::begin() const [function] [call site] 00085
11 crow::json::rvalue::t() const [function] [call site] 00086
11 __cxa_allocate_exception [call site] 00087
11 std::runtime_error::runtime_error(char const*) [call site] 00088
11 __cxa_throw [call site] 00089
11 std::runtime_error::~runtime_error() [call site] 00090
11 __cxa_free_exception [call site] 00091
10 crow::json::rvalue::end() const [function] [call site] 00092
11 crow::json::rvalue::t() const [function] [call site] 00093
11 __cxa_allocate_exception [call site] 00094
11 std::runtime_error::runtime_error(char const*) [call site] 00095
11 __cxa_throw [call site] 00096
11 std::runtime_error::~runtime_error() [call site] 00097
11 __cxa_free_exception [call site] 00098
10 crow::json::rvalue::operator=(crow::json::rvalue&&) [function] [call site] 00099
11 crow::json::detail::r_string::operator=(crow::json::detail::r_string&&) [function] [call site] 00100
11 __clang_call_terminate [call site] 00101
10 crow::json::rvalue::operator=(crow::json::rvalue&&) [function] [call site] 00102
9 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::consume(char) [function] [call site] 00103
9 crow::json::rvalue::set_error() [function] [call site] 00104
9 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::ws_skip() [function] [call site] 00105
9 crow::json::detail::r_string::~r_string() [function] [call site] 00106
9 crow::json::rvalue::~rvalue() [function] [call site] 00107
7 crow::json::rvalue::operator bool() const [function] [call site] 00108
7 crow::json::rvalue::set_error() [function] [call site] 00109
7 crow::json::rvalue::~rvalue() [function] [call site] 00110
7 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::ws_skip() [function] [call site] 00111
7 crow::json::rvalue::emplace_back(crow::json::rvalue&&) [function] [call site] 00112
7 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::consume(char) [function] [call site] 00113
7 crow::json::rvalue::set_error() [function] [call site] 00114
7 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::ws_skip() [function] [call site] 00115
7 crow::json::rvalue::~rvalue() [function] [call site] 00116
5 crow::json::load_nocopy_internal(char*, unsigned long)::Parser::ws_skip() [function] [call site] 00117
5 crow::json::rvalue::operator bool() const [function] [call site] 00118
5 crow::json::rvalue::set_error() [function] [call site] 00119
5 crow::json::rvalue::~rvalue() [function] [call site] 00120
3 crow::json::rvalue::operator bool() const [function] [call site] 00121
3 crow::json::detail::r_string::force(char*, unsigned int) [function] [call site] 00122
3 crow::json::rvalue::~rvalue() [function] [call site] 00123
1 crow::json::rvalue::operator bool() const [function] [call site] 00124
1 crow::json::rvalue::t() const [function] [call site] 00125
1 crow::json::rvalue::keys() const [function] [call site] 00126
2 crow::json::rvalue::t() const [function] [call site] 00127
2 __cxa_allocate_exception [call site] 00128
2 std::runtime_error::runtime_error(char const*) [call site] 00129
2 __cxa_throw [call site] 00130
2 std::runtime_error::~runtime_error() [call site] 00131
2 __cxa_free_exception [call site] 00132
2 crow::json::rvalue::key() const [function] [call site] 00133
2 crow::json::detail::r_string::operator std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >() const [function] [call site] 00134
1 crow::json::rvalue::operator[](std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const [function] [call site] 00135
2 crow::json::rvalue::t() const [function] [call site] 00136
2 __cxa_allocate_exception [call site] 00137
2 std::runtime_error::runtime_error(char const*) [call site] 00138
2 __cxa_throw [call site] 00139
2 std::runtime_error::~runtime_error() [call site] 00140
2 __cxa_free_exception [call site] 00141
2 crow::json::rvalue::is_cached() const [function] [call site] 00142
2 crow::json::rvalue::begin() const [function] [call site] 00143
2 crow::json::rvalue::end() const [function] [call site] 00144
2 crow::json::rvalue::set_cached() const [function] [call site] 00145
2 crow::json::rvalue::begin() const [function] [call site] 00146
2 crow::json::rvalue::end() const [function] [call site] 00147
2 crow::json::rvalue::end() const [function] [call site] 00148
2 crow::json::detail::operator==(crow::json::detail::r_string const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) [function] [call site] 00149
3 bool crow::json::detail::r_string::equals<crow::json::detail::r_string, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(crow::json::detail::r_string const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) [function] [call site] 00150
4 crow::json::detail::r_string::size() const [function] [call site] 00151
5 crow::json::detail::r_string::end() const [function] [call site] 00152
5 crow::json::detail::r_string::begin() const [function] [call site] 00153
4 crow::json::detail::r_string::size() const [function] [call site] 00154
4 crow::json::detail::r_string::begin() const [function] [call site] 00155
2 __cxa_allocate_exception [call site] 00156
2 std::runtime_error::runtime_error(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) [call site] 00157
2 __cxa_throw [call site] 00158
2 __cxa_free_exception [call site] 00159
1 crow::json::rvalue::t() const [function] [call site] 00160
1 crow::json::rvalue::begin() const [function] [call site] 00161
1 crow::json::rvalue::end() const [function] [call site] 00162
1 crow::json::rvalue::t() const [function] [call site] 00163
1 crow::json::rvalue::~rvalue() [function] [call site] 00164
1 __cxa_begin_catch [call site] 00165
1 __cxa_end_catch [call site] 00166