Coverage Report

Created: 2026-04-29 06:04

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/immer/extra/fuzzer/fuzzer_input.hpp
Line
Count
Source
1
//
2
// immer: immutable data structures for C++
3
// Copyright (C) 2016, 2017, 2018 Juan Pedro Bolivar Puente
4
//
5
// This software is distributed under the Boost Software License, Version 1.0.
6
// See accompanying file LICENSE or copy at http://boost.org/LICENSE_1_0.txt
7
//
8
9
#pragma once
10
11
#include <cstdint>
12
#include <memory>
13
#include <stdexcept>
14
15
#if defined(__GNUC__) && (__GNUC__ == 9 || __GNUC__ == 8 || __GNUC__ == 10)
16
#define IMMER_DISABLE_FUZZER_DUE_TO_GCC_BUG 1
17
#endif
18
19
struct no_more_input : std::exception
20
{};
21
22
constexpr auto fuzzer_input_max_size = 1 << 16;
23
24
struct fuzzer_input
25
{
26
    const std::uint8_t* data_;
27
    std::size_t size_;
28
29
    const std::uint8_t* next(std::size_t size)
30
64.5M
    {
31
64.5M
        if (size_ < size)
32
0
            throw no_more_input{};
33
64.5M
        auto r = data_;
34
64.5M
        data_ += size;
35
64.5M
        size_ -= size;
36
64.5M
        return r;
37
64.5M
    }
38
39
    const std::uint8_t* next(std::size_t size, std::size_t align)
40
64.6M
    {
41
64.6M
        auto& p = const_cast<void*&>(reinterpret_cast<const void*&>(data_));
42
64.6M
        auto r  = std::align(align, size, p, size_);
43
64.6M
        if (r == nullptr)
44
85.3k
            throw no_more_input{};
45
64.5M
        return next(size);
46
64.6M
    }
47
48
    template <typename Fn>
49
    int run(Fn step)
50
85.4k
    {
51
85.4k
        if (size_ > fuzzer_input_max_size)
52
105
            return 0;
53
85.3k
        try {
54
18.3M
            while (step(*this))
55
18.2M
                continue;
56
85.3k
        } catch (const no_more_input&) {
57
85.3k
        };
58
85.3k
        return 0;
59
85.3k
    }
flex-vector-st.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_6>(LLVMFuzzerTestOneInput::$_6)
Line
Count
Source
50
10.2k
    {
51
10.2k
        if (size_ > fuzzer_input_max_size)
52
3
            return 0;
53
10.2k
        try {
54
2.19M
            while (step(*this))
55
2.18M
                continue;
56
10.2k
        } catch (const no_more_input&) {
57
10.2k
        };
58
10.2k
        return 0;
59
10.2k
    }
set-st-str.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_1>(LLVMFuzzerTestOneInput::$_1)
Line
Count
Source
50
3.36k
    {
51
3.36k
        if (size_ > fuzzer_input_max_size)
52
4
            return 0;
53
3.36k
        try {
54
179k
            while (step(*this))
55
176k
                continue;
56
3.36k
        } catch (const no_more_input&) {
57
3.36k
        };
58
3.36k
        return 0;
59
3.36k
    }
map.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_1>(LLVMFuzzerTestOneInput::$_1)
Line
Count
Source
50
5.48k
    {
51
5.48k
        if (size_ > fuzzer_input_max_size)
52
5
            return 0;
53
5.48k
        try {
54
217k
            while (step(*this))
55
211k
                continue;
56
5.48k
        } catch (const no_more_input&) {
57
5.48k
        };
58
5.48k
        return 0;
59
5.48k
    }
array-gc.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_4>(LLVMFuzzerTestOneInput::$_4)
Line
Count
Source
50
989
    {
51
989
        if (size_ > fuzzer_input_max_size)
52
8
            return 0;
53
981
        try {
54
1.58M
            while (step(*this))
55
1.58M
                continue;
56
981
        } catch (const no_more_input&) {
57
981
        };
58
981
        return 0;
59
981
    }
set-st-str-conflict.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_1>(LLVMFuzzerTestOneInput::$_1)
Line
Count
Source
50
2.42k
    {
51
2.42k
        if (size_ > fuzzer_input_max_size)
52
5
            return 0;
53
2.42k
        try {
54
151k
            while (step(*this))
55
149k
                continue;
56
2.42k
        } catch (const no_more_input&) {
57
2.42k
        };
58
2.42k
        return 0;
59
2.42k
    }
map-st-str.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_1>(LLVMFuzzerTestOneInput::$_1)
Line
Count
Source
50
4.10k
    {
51
4.10k
        if (size_ > fuzzer_input_max_size)
52
5
            return 0;
53
4.10k
        try {
54
356k
            while (step(*this))
55
351k
                continue;
56
4.10k
        } catch (const no_more_input&) {
57
4.10k
        };
58
4.10k
        return 0;
59
4.10k
    }
vector-st.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_3>(LLVMFuzzerTestOneInput::$_3)
Line
Count
Source
50
2.34k
    {
51
2.34k
        if (size_ > fuzzer_input_max_size)
52
5
            return 0;
53
2.34k
        try {
54
1.40M
            while (step(*this))
55
1.39M
                continue;
56
2.34k
        } catch (const no_more_input&) {
57
2.34k
        };
58
2.34k
        return 0;
59
2.34k
    }
set-st.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_1>(LLVMFuzzerTestOneInput::$_1)
Line
Count
Source
50
4.43k
    {
51
4.43k
        if (size_ > fuzzer_input_max_size)
52
5
            return 0;
53
4.42k
        try {
54
194k
            while (step(*this))
55
190k
                continue;
56
4.42k
        } catch (const no_more_input&) {
57
4.42k
        };
58
4.42k
        return 0;
59
4.42k
    }
set.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_1>(LLVMFuzzerTestOneInput::$_1)
Line
Count
Source
50
3.99k
    {
51
3.99k
        if (size_ > fuzzer_input_max_size)
52
5
            return 0;
53
3.99k
        try {
54
182k
            while (step(*this))
55
178k
                continue;
56
3.99k
        } catch (const no_more_input&) {
57
3.99k
        };
58
3.99k
        return 0;
59
3.99k
    }
map-st.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_1>(LLVMFuzzerTestOneInput::$_1)
Line
Count
Source
50
5.09k
    {
51
5.09k
        if (size_ > fuzzer_input_max_size)
52
1
            return 0;
53
5.08k
        try {
54
135k
            while (step(*this))
55
130k
                continue;
56
5.08k
        } catch (const no_more_input&) {
57
5.08k
        };
58
5.08k
        return 0;
59
5.08k
    }
set-gc.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_1>(LLVMFuzzerTestOneInput::$_1)
Line
Count
Source
50
3.16k
    {
51
3.16k
        if (size_ > fuzzer_input_max_size)
52
7
            return 0;
53
3.16k
        try {
54
162k
            while (step(*this))
55
159k
                continue;
56
3.16k
        } catch (const no_more_input&) {
57
3.16k
        };
58
3.16k
        return 0;
59
3.16k
    }
flex-vector.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_6>(LLVMFuzzerTestOneInput::$_6)
Line
Count
Source
50
8.70k
    {
51
8.70k
        if (size_ > fuzzer_input_max_size)
52
8
            return 0;
53
8.69k
        try {
54
2.05M
            while (step(*this))
55
2.04M
                continue;
56
8.69k
        } catch (const no_more_input&) {
57
8.69k
        };
58
8.69k
        return 0;
59
8.69k
    }
map-gc.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_1>(LLVMFuzzerTestOneInput::$_1)
Line
Count
Source
50
3.92k
    {
51
3.92k
        if (size_ > fuzzer_input_max_size)
52
6
            return 0;
53
3.91k
        try {
54
177k
            while (step(*this))
55
173k
                continue;
56
3.91k
        } catch (const no_more_input&) {
57
3.91k
        };
58
3.91k
        return 0;
59
3.91k
    }
array.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_4>(LLVMFuzzerTestOneInput::$_4)
Line
Count
Source
50
636
    {
51
636
        if (size_ > fuzzer_input_max_size)
52
6
            return 0;
53
630
        try {
54
365k
            while (step(*this))
55
364k
                continue;
56
630
        } catch (const no_more_input&) {
57
630
        };
58
630
        return 0;
59
630
    }
flex-vector-gc.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_5>(LLVMFuzzerTestOneInput::$_5)
Line
Count
Source
50
7.83k
    {
51
7.83k
        if (size_ > fuzzer_input_max_size)
52
12
            return 0;
53
7.82k
        try {
54
2.34M
            while (step(*this))
55
2.33M
                continue;
56
7.82k
        } catch (const no_more_input&) {
57
7.82k
        };
58
7.82k
        return 0;
59
7.82k
    }
vector.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_3>(LLVMFuzzerTestOneInput::$_3)
Line
Count
Source
50
2.26k
    {
51
2.26k
        if (size_ > fuzzer_input_max_size)
52
4
            return 0;
53
2.26k
        try {
54
1.74M
            while (step(*this))
55
1.74M
                continue;
56
2.26k
        } catch (const no_more_input&) {
57
2.26k
        };
58
2.26k
        return 0;
59
2.26k
    }
flex-vector-bo.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_6>(LLVMFuzzerTestOneInput::$_6)
Line
Count
Source
50
10.5k
    {
51
10.5k
        if (size_ > fuzzer_input_max_size)
52
6
            return 0;
53
10.5k
        try {
54
2.61M
            while (step(*this))
55
2.60M
                continue;
56
10.5k
        } catch (const no_more_input&) {
57
10.5k
        };
58
10.5k
        return 0;
59
10.5k
    }
map-st-str-conflict.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_1>(LLVMFuzzerTestOneInput::$_1)
Line
Count
Source
50
3.68k
    {
51
3.68k
        if (size_ > fuzzer_input_max_size)
52
4
            return 0;
53
3.68k
        try {
54
380k
            while (step(*this))
55
377k
                continue;
56
3.68k
        } catch (const no_more_input&) {
57
3.68k
        };
58
3.68k
        return 0;
59
3.68k
    }
vector-gc.cpp:int fuzzer_input::run<LLVMFuzzerTestOneInput::$_3>(LLVMFuzzerTestOneInput::$_3)
Line
Count
Source
50
2.17k
    {
51
2.17k
        if (size_ > fuzzer_input_max_size)
52
6
            return 0;
53
2.16k
        try {
54
1.91M
            while (step(*this))
55
1.91M
                continue;
56
2.16k
        } catch (const no_more_input&) {
57
2.16k
        };
58
2.16k
        return 0;
59
2.16k
    }
60
};
61
62
template <typename T>
63
const T& read(fuzzer_input& fz)
64
64.6M
{
65
64.6M
    return *reinterpret_cast<const T*>(fz.next(sizeof(T), alignof(T)));
66
64.6M
}
char const& read<char>(fuzzer_input&)
Line
Count
Source
64
61.3M
{
65
61.3M
    return *reinterpret_cast<const T*>(fz.next(sizeof(T), alignof(T)));
66
61.3M
}
unsigned char const& read<unsigned char>(fuzzer_input&)
Line
Count
Source
64
1.65M
{
65
1.65M
    return *reinterpret_cast<const T*>(fz.next(sizeof(T), alignof(T)));
66
1.65M
}
unsigned long const& read<unsigned long>(fuzzer_input&)
Line
Count
Source
64
1.61M
{
65
1.61M
    return *reinterpret_cast<const T*>(fz.next(sizeof(T), alignof(T)));
66
1.61M
}
67
68
template <typename T, typename Cond>
69
T read(fuzzer_input& fz, Cond cond)
70
39.1M
{
71
39.1M
    auto x = read<T>(fz);
72
44.7M
    while (!cond(x))
73
5.62M
        x = read<T>(fz);
74
39.1M
    return x;
75
39.1M
}
flex-vector-st.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
5.17M
{
71
5.17M
    auto x = read<T>(fz);
72
5.65M
    while (!cond(x))
73
479k
        x = read<T>(fz);
74
5.17M
    return x;
75
5.17M
}
flex-vector-st.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 3u, 3u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 3u, 3u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 3u, 3u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 3u, 3u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
210k
{
71
210k
    auto x = read<T>(fz);
72
241k
    while (!cond(x))
73
30.8k
        x = read<T>(fz);
74
210k
    return x;
75
210k
}
flex-vector-st.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_3::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 3u, 3u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 3u, 3u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_3::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 3u, 3u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 3u, 3u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
128k
{
71
128k
    auto x = read<T>(fz);
72
138k
    while (!cond(x))
73
10.2k
        x = read<T>(fz);
74
128k
    return x;
75
128k
}
flex-vector-st.cpp:char read<char, LLVMFuzzerTestOneInput::$_1::operator()<char>(char) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_1::operator()<char>(char) const::{lambda(auto:1)#1})
Line
Count
Source
70
701k
{
71
701k
    auto x = read<T>(fz);
72
778k
    while (!cond(x))
73
77.3k
        x = read<T>(fz);
74
701k
    return x;
75
701k
}
set-st-str.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
356k
{
71
356k
    auto x = read<T>(fz);
72
545k
    while (!cond(x))
73
188k
        x = read<T>(fz);
74
356k
    return x;
75
356k
}
map.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
429k
{
71
429k
    auto x = read<T>(fz);
72
756k
    while (!cond(x))
73
326k
        x = read<T>(fz);
74
429k
    return x;
75
429k
}
array-gc.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
1.62M
{
71
1.62M
    auto x = read<T>(fz);
72
1.70M
    while (!cond(x))
73
73.8k
        x = read<T>(fz);
74
1.62M
    return x;
75
1.62M
}
array-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_1::operator()<immer::array<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> > >(immer::array<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> >&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_1::operator()<immer::array<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> > >(immer::array<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> >&) const::{lambda(auto:1)#1})
Line
Count
Source
70
7.56k
{
71
7.56k
    auto x = read<T>(fz);
72
96.1k
    while (!cond(x))
73
88.6k
        x = read<T>(fz);
74
7.56k
    return x;
75
7.56k
}
array-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::array<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> > >(immer::array<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> >&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::array<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> > >(immer::array<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> >&) const::{lambda(auto:1)#1})
Line
Count
Source
70
2.18k
{
71
2.18k
    auto x = read<T>(fz);
72
14.7k
    while (!cond(x))
73
12.6k
        x = read<T>(fz);
74
2.18k
    return x;
75
2.18k
}
array-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_1::operator()<immer::array_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> > >(immer::array_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> >&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_1::operator()<immer::array_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> > >(immer::array_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> >&) const::{lambda(auto:1)#1})
Line
Count
Source
70
1.21k
{
71
1.21k
    auto x = read<T>(fz);
72
12.1k
    while (!cond(x))
73
10.9k
        x = read<T>(fz);
74
1.21k
    return x;
75
1.21k
}
array-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::array_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> > >(immer::array_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> >&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::array_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> > >(immer::array_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false> >&) const::{lambda(auto:1)#1})
Line
Count
Source
70
5.34k
{
71
5.34k
    auto x = read<T>(fz);
72
9.18k
    while (!cond(x))
73
3.84k
        x = read<T>(fz);
74
5.34k
    return x;
75
5.34k
}
set-st-str-conflict.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
301k
{
71
301k
    auto x = read<T>(fz);
72
470k
    while (!cond(x))
73
169k
        x = read<T>(fz);
74
301k
    return x;
75
301k
}
map-st-str.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
708k
{
71
708k
    auto x = read<T>(fz);
72
1.07M
    while (!cond(x))
73
365k
        x = read<T>(fz);
74
708k
    return x;
75
708k
}
vector-st.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
2.80M
{
71
2.80M
    auto x = read<T>(fz);
72
2.94M
    while (!cond(x))
73
141k
        x = read<T>(fz);
74
2.80M
    return x;
75
2.80M
}
vector-st.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_1::operator()<immer::vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_1::operator()<immer::vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
24.2k
{
71
24.2k
    auto x = read<T>(fz);
72
27.4k
    while (!cond(x))
73
3.25k
        x = read<T>(fz);
74
24.2k
    return x;
75
24.2k
}
vector-st.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
58.2k
{
71
58.2k
    auto x = read<T>(fz);
72
77.3k
    while (!cond(x))
73
19.0k
        x = read<T>(fz);
74
58.2k
    return x;
75
58.2k
}
set-st.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
385k
{
71
385k
    auto x = read<T>(fz);
72
574k
    while (!cond(x))
73
188k
        x = read<T>(fz);
74
385k
    return x;
75
385k
}
set.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
360k
{
71
360k
    auto x = read<T>(fz);
72
616k
    while (!cond(x))
73
256k
        x = read<T>(fz);
74
360k
    return x;
75
360k
}
map-st.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
265k
{
71
265k
    auto x = read<T>(fz);
72
400k
    while (!cond(x))
73
134k
        x = read<T>(fz);
74
265k
    return x;
75
265k
}
set-gc.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
322k
{
71
322k
    auto x = read<T>(fz);
72
544k
    while (!cond(x))
73
221k
        x = read<T>(fz);
74
322k
    return x;
75
322k
}
flex-vector.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
5.11M
{
71
5.11M
    auto x = read<T>(fz);
72
5.46M
    while (!cond(x))
73
352k
        x = read<T>(fz);
74
5.11M
    return x;
75
5.11M
}
flex-vector.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::flex_vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::flex_vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::flex_vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::flex_vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
177k
{
71
177k
    auto x = read<T>(fz);
72
211k
    while (!cond(x))
73
34.6k
        x = read<T>(fz);
74
177k
    return x;
75
177k
}
flex-vector.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_3::operator()<immer::flex_vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::flex_vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_3::operator()<immer::flex_vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::flex_vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
99.4k
{
71
99.4k
    auto x = read<T>(fz);
72
110k
    while (!cond(x))
73
11.5k
        x = read<T>(fz);
74
99.4k
    return x;
75
99.4k
}
flex-vector.cpp:char read<char, LLVMFuzzerTestOneInput::$_1::operator()<char>(char) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_1::operator()<char>(char) const::{lambda(auto:1)#1})
Line
Count
Source
70
284k
{
71
284k
    auto x = read<T>(fz);
72
320k
    while (!cond(x))
73
35.8k
        x = read<T>(fz);
74
284k
    return x;
75
284k
}
map-gc.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
350k
{
71
350k
    auto x = read<T>(fz);
72
634k
    while (!cond(x))
73
283k
        x = read<T>(fz);
74
350k
    return x;
75
350k
}
array.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
729k
{
71
729k
    auto x = read<T>(fz);
72
1.04M
    while (!cond(x))
73
318k
        x = read<T>(fz);
74
729k
    return x;
75
729k
}
array.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_1::operator()<immer::array<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true> > >(immer::array<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true> >&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_1::operator()<immer::array<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true> > >(immer::array<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true> >&) const::{lambda(auto:1)#1})
Line
Count
Source
70
9.09k
{
71
9.09k
    auto x = read<T>(fz);
72
13.1k
    while (!cond(x))
73
4.00k
        x = read<T>(fz);
74
9.09k
    return x;
75
9.09k
}
array.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::array<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true> > >(immer::array<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true> >&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::array<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true> > >(immer::array<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true> >&) const::{lambda(auto:1)#1})
Line
Count
Source
70
8.62k
{
71
8.62k
    auto x = read<T>(fz);
72
16.0k
    while (!cond(x))
73
7.37k
        x = read<T>(fz);
74
8.62k
    return x;
75
8.62k
}
flex-vector-gc.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
2.69M
{
71
2.69M
    auto x = read<T>(fz);
72
2.93M
    while (!cond(x))
73
248k
        x = read<T>(fz);
74
2.69M
    return x;
75
2.69M
}
flex-vector-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
5.70k
{
71
5.70k
    auto x = read<T>(fz);
72
6.91k
    while (!cond(x))
73
1.21k
        x = read<T>(fz);
74
5.70k
    return x;
75
5.70k
}
flex-vector-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_3::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_3::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
30.4k
{
71
30.4k
    auto x = read<T>(fz);
72
49.8k
    while (!cond(x))
73
19.4k
        x = read<T>(fz);
74
30.4k
    return x;
75
30.4k
}
flex-vector-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::flex_vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::flex_vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::flex_vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::flex_vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
10.6k
{
71
10.6k
    auto x = read<T>(fz);
72
11.7k
    while (!cond(x))
73
1.12k
        x = read<T>(fz);
74
10.6k
    return x;
75
10.6k
}
flex-vector-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_3::operator()<immer::flex_vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::flex_vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_3::operator()<immer::flex_vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::flex_vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
39.0k
{
71
39.0k
    auto x = read<T>(fz);
72
41.1k
    while (!cond(x))
73
2.11k
        x = read<T>(fz);
74
39.0k
    return x;
75
39.0k
}
flex-vector-gc.cpp:char read<char, LLVMFuzzerTestOneInput::$_1::operator()<char>(char) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_1::operator()<char>(char) const::{lambda(auto:1)#1})
Line
Count
Source
70
1.91M
{
71
1.91M
    auto x = read<T>(fz);
72
1.96M
    while (!cond(x))
73
52.3k
        x = read<T>(fz);
74
1.91M
    return x;
75
1.91M
}
vector.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
3.48M
{
71
3.48M
    auto x = read<T>(fz);
72
3.58M
    while (!cond(x))
73
96.5k
        x = read<T>(fz);
74
3.48M
    return x;
75
3.48M
}
vector.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_1::operator()<immer::vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_1::operator()<immer::vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
25.3k
{
71
25.3k
    auto x = read<T>(fz);
72
35.0k
    while (!cond(x))
73
9.65k
        x = read<T>(fz);
74
25.3k
    return x;
75
25.3k
}
vector.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap, 1024ul>, immer::refcount_policy, immer::spinlock_policy, immer::no_transience_policy, false, true>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
44.8k
{
71
44.8k
    auto x = read<T>(fz);
72
56.8k
    while (!cond(x))
73
11.9k
        x = read<T>(fz);
74
44.8k
    return x;
75
44.8k
}
flex-vector-bo.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
5.90M
{
71
5.90M
    auto x = read<T>(fz);
72
6.28M
    while (!cond(x))
73
379k
        x = read<T>(fz);
74
5.90M
    return x;
75
5.90M
}
flex-vector-bo.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, true, true>, 3u, 3u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, true, true>, 3u, 3u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, true, true>, 3u, 3u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, true, true>, 3u, 3u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
205k
{
71
205k
    auto x = read<T>(fz);
72
233k
    while (!cond(x))
73
27.2k
        x = read<T>(fz);
74
205k
    return x;
75
205k
}
flex-vector-bo.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_3::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, true, true>, 3u, 3u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, true, true>, 3u, 3u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_3::operator()<immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, true, true>, 3u, 3u> >(immer::flex_vector<int, immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy, immer::no_lock_policy, immer::no_transience_policy, true, true>, 3u, 3u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
130k
{
71
130k
    auto x = read<T>(fz);
72
143k
    while (!cond(x))
73
12.6k
        x = read<T>(fz);
74
130k
    return x;
75
130k
}
flex-vector-bo.cpp:char read<char, LLVMFuzzerTestOneInput::$_1::operator()<char>(char) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_1::operator()<char>(char) const::{lambda(auto:1)#1})
Line
Count
Source
70
1.12M
{
71
1.12M
    auto x = read<T>(fz);
72
1.18M
    while (!cond(x))
73
57.0k
        x = read<T>(fz);
74
1.12M
    return x;
75
1.12M
}
map-st-str-conflict.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
758k
{
71
758k
    auto x = read<T>(fz);
72
1.42M
    while (!cond(x))
73
667k
        x = read<T>(fz);
74
758k
    return x;
75
758k
}
vector-gc.cpp:char read<char, LLVMFuzzerTestOneInput::$_0>(fuzzer_input&, LLVMFuzzerTestOneInput::$_0)
Line
Count
Source
70
2.02M
{
71
2.02M
    auto x = read<T>(fz);
72
2.18M
    while (!cond(x))
73
163k
        x = read<T>(fz);
74
2.02M
    return x;
75
2.02M
}
vector-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_1::operator()<immer::vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_1::operator()<immer::vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
5.33k
{
71
5.33k
    auto x = read<T>(fz);
72
7.12k
    while (!cond(x))
73
1.78k
        x = read<T>(fz);
74
5.33k
    return x;
75
5.33k
}
vector-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::vector<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
25.4k
{
71
25.4k
    auto x = read<T>(fz);
72
28.5k
    while (!cond(x))
73
3.14k
        x = read<T>(fz);
74
25.4k
    return x;
75
25.4k
}
vector-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_1::operator()<immer::vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_1::operator()<immer::vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
19.8k
{
71
19.8k
    auto x = read<T>(fz);
72
21.9k
    while (!cond(x))
73
2.06k
        x = read<T>(fz);
74
19.8k
    return x;
75
19.8k
}
vector-gc.cpp:unsigned char read<unsigned char, LLVMFuzzerTestOneInput::$_2::operator()<immer::vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1}>(fuzzer_input&, LLVMFuzzerTestOneInput::$_2::operator()<immer::vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u> >(immer::vector_transient<int, immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::spinlock_policy, immer::gc_transience_policy, false, false>, 2u, 2u>&) const::{lambda(auto:1)#1})
Line
Count
Source
70
42.6k
{
71
42.6k
    auto x = read<T>(fz);
72
54.2k
    while (!cond(x))
73
11.5k
        x = read<T>(fz);
74
42.6k
    return x;
75
42.6k
}