Fuzz introspector: fuzzing/script_fuzzer.cpp
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
268 0 EP call site: 00000 BT::Any::cast

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 BT::Blackboard::create [function] [call site] 00001
2 std::shared_ptr<Blackboard> [function] [call site] 00002
2 BT::Blackboard::Blackboard [function] [call site] 00003
1 std::make_shared<BT::EnumsTable> [function] [call site] 00004
1 FuzzedDataProvider::ConsumeRandomLengthString [function] [call site] 00014
1 BT::ValidateScript [function] [call site] 00015
2 lexy::string_input<lexy::utf8_encoding> [function] [call site] 00016
2 ErrorReport [function] [call site] 00017
2 std::back_inserter [function] [call site] 00018
2 lexy::parse<BT::Grammar::stmt> [function] [call site] 00019
2 nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value [function] [call site] 00020
2 lexy::validate_result::error_count [function] [call site] 00021
2 nonstd::make_unexpected [function] [call site] 00027
3 unexpected< [call site] 00028
3 std::forward<E> [function] [call site] 00029
2 nonstd::make_unexpected [function] [call site] 00030
2 nonstd::make_unexpected [function] [call site] 00032
1 BT::ParseScript [function] [call site] 00033
2 lexy::string_input<lexy::utf8_encoding> [function] [call site] 00034
2 ErrorReport [function] [call site] 00035
2 std::back_inserter [function] [call site] 00036
2 lexy::parse<BT::Grammar::stmt> [function] [call site] 00037
2 nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value [function] [call site] 00038
2 lexy::validate_result::error_count [function] [call site] 00039
2 nonstd::make_unexpected [function] [call site] 00042
2 back [function] [call site] 00045
3 JSON_HEDLEY_UNLIKELY [function] [call site] 00046
3 JSON_THROW [function] [call site] 00048
3 out_of_range::create [function] [call site] 00049
4 concat [function] [call site] 00050
5 lexy::_detail::pt_buffer::reserve [function] [call site] 00051
6 lexy::_detail::pt_buffer::remaining_capacity [function] [call site] 00052
7 std::size_t [function] [call site] 00053
7 lexy::_detail::pt_buffer::end [function] [call site] 00054
6 lexy::_detail::pt_buffer::allocate [function] [call site] 00055
7 lexy::_detail::pt_buffer::allocate [function] [call site] 00056
8 lexy::_detail::pt_buffer::allocate [function] [call site] 00057
8 lexy::_detail::parse_context_control_block [function] [call site] 00058
9 static_cast<int> [function] [call site] 00060
7 lexy::_detail::parse_context_control_block [function] [call site] 00061
5 concat_length [function] [call site] 00062
5 concat_into [function] [call site] 00063
5 std::forward<Args> [function] [call site] 00064
4 exception::name [function] [call site] 00065
5 to_string [function] [call site] 00067
6 std::accumulate [function] [call site] 00068
6 begin [function] [call site] 00069
7 primitive_iterator_t::set_begin [function] [call site] 00070
6 end [function] [call site] 00071
7 set_end [function] [call site] 00072
8 JSON_ASSERT [function] [call site] 00073
8 json_reverse_iterator::json_reverse_iterator [function] [call site] 00074
8 json_reverse_iterator::json_reverse_iterator [function] [call site] 00075
8 primitive_iterator_t [function] [call site] 00076
8 set_begin [function] [call site] 00077
8 JSON_ASSERT [function] [call site] 00078
8 begin [function] [call site] 00079
9 primitive_iterator_t::set_begin [function] [call site] 00080
8 begin [function] [call site] 00081
9 primitive_iterator_t::set_begin [function] [call site] 00082
8 set_end [function] [call site] 00083
9 JSON_ASSERT [function] [call site] 00084
9 json_reverse_iterator::json_reverse_iterator [function] [call site] 00085
9 json_reverse_iterator::json_reverse_iterator [function] [call site] 00086
9 primitive_iterator_t [function] [call site] 00087
9 set_begin [function] [call site] 00088
9 JSON_ASSERT [function] [call site] 00089
9 primitive_iterator_t::set_begin [function] [call site] 00093
9 JSON_ASSERT [function] [call site] 00094
8 primitive_iterator_t::set_begin [function] [call site] 00100
8 JSON_ASSERT [function] [call site] 00101
4 exception::diagnostics [function] [call site] 00123
4 std::string::c_str [function] [call site] 00124
3 back [function] [call site] 00125
4 JSON_HEDLEY_UNLIKELY [function] [call site] 00126
4 JSON_THROW [function] [call site] 00128
4 out_of_range::create [function] [call site] 00129
2 RuntimeError [function] [call site] 00131
2 nonstd::make_unexpected [function] [call site] 00135
2 nonstd::make_unexpected [function] [call site] 00137
1 BT::Any::cast [function] [call site] 00146
2 BT::Any::tryCast [function] [call site] 00147
3 BT::Any::empty [function] [call site] 00148
4 BT::Any::empty [function] [call site] 00149
3 std::runtime_error [function] [call site] 00150
3 castedType [function] [call site] 00151
3 linb::any_cast<T> [function] [call site] 00153
3 static_cast<T> [function] [call site] 00161
3 BT::Any::convert [function] [call site] 00162
4 nonstd::make_unexpected [function] [call site] 00163
3 BT::Any::stringToNumber [function] [call site] 00173
4 linb::any_cast<SafeAny::SimpleString> [function] [call site] 00174
4 std::from_chars [function] [call site] 00175
4 std::errc [function] [call site] 00179
4 nonstd::make_unexpected [function] [call site] 00180
4 std::stoul [function] [call site] 00181
4 SafeAny::SimpleString::toStdString [function] [call site] 00182
5 SafeAny::SimpleString::size [function] [call site] 00183
6 SafeAny::SimpleString::isSOO [function] [call site] 00184
5 SafeAny::SimpleString::data [function] [call site] 00186
6 SafeAny::SimpleString::isSOO [function] [call site] 00187
5 SafeAny::SimpleString::size [function] [call site] 00188
4 std::stol [function] [call site] 00190
4 SafeAny::SimpleString::toStdString [function] [call site] 00191
4 std::stod [function] [call site] 00193
4 SafeAny::SimpleString::toStdString [function] [call site] 00194
4 nonstd::make_unexpected [function] [call site] 00195
4 nonstd::make_unexpected [function] [call site] 00196
3 static_cast<T> [function] [call site] 00197
3 nonstd::make_unexpected [function] [call site] 00199
3 BT::Any::isString [function] [call site] 00200
3 BT::Any::stringToNumber [function] [call site] 00201
3 BT::Any::convert [function] [call site] 00203
2 std::runtime_error [function] [call site] 00206
2 parse_error::parse_error [function] [call site] 00207
1 BT::Any::Any [function] [call site] 00209
1 BT::Blackboard::get [function] [call site] 00210
2 BT::Blackboard::getAnyLocked [function] [call site] 00211
3 BT::Blackboard::getEntry [function] [call site] 00212
4 StartWith [function] [call site] 00213
4 rootBlackboard [function] [call site] 00214
4 cend [function] [call site] 00221
5 set_end [function] [call site] 00222
6 JSON_ASSERT [function] [call site] 00223
6 json_reverse_iterator::json_reverse_iterator [function] [call site] 00224
6 json_reverse_iterator::json_reverse_iterator [function] [call site] 00225
6 primitive_iterator_t [function] [call site] 00226
6 set_begin [function] [call site] 00227
6 JSON_ASSERT [function] [call site] 00228
6 primitive_iterator_t::set_begin [function] [call site] 00232
6 JSON_ASSERT [function] [call site] 00233
4 BT::Blackboard::getEntry [function] [call site] 00237
4 IsPrivateKey [function] [call site] 00250
4 BT::Blackboard::getEntry [function] [call site] 00251
3 AnyPtrLocked [function] [call site] 00252
2 BT::Blackboard::get [function] [call site] 00253
3 BT::Blackboard::getAnyLocked [function] [call site] 00254
3 BT::Blackboard::get [function] [call site] 00255
3 RuntimeError [function] [call site] 00257
3 BT::Blackboard::get [function] [call site] 00258
3 RuntimeError [function] [call site] 00259
2 RuntimeError [function] [call site] 00261
2 BT::Blackboard::get [function] [call site] 00262
2 RuntimeError [function] [call site] 00263
1 BT::ParseScriptAndExecute [function] [call site] 00264
2 BT::ParseScript [function] [call site] 00265
2 nonstd::make_unexpected [function] [call site] 00267
2 parse_error::parse_error [function] [call site] 00268