Use std::to_chars to make a string out of a 64 bit number.
#include "generic_peek.h"
#include <vespa/eval/eval/nested_loop.h>
#include <vespa/eval/eval/wrap_param.h>
-#include <vespa/vespalib/util/overload.h>
#include <vespa/vespalib/util/stash.h>
#include <vespa/vespalib/util/typify.h>
#include <vespa/vespalib/util/visit_ranges.h>
@@ -252,10 +251,12 @@ struct SparsePlan {
SparseState make_state(const Getter &get_child_value) const {
SmallVector<Handle> handles;
SmallVector<string_id> view_addr;
+ char buf[24];
for (const auto & dim : lookup_specs) {
if (dim.has_child()) {
int64_t child_value = get_child_value(dim.get_child_idx());
- handles.emplace_back(vespalib::make_string("%" PRId64, child_value));
+ auto res = std::to_chars(buf, buf + sizeof(buf), child_value, 10);
+ handles.emplace_back(vespalib::stringref(buf, res.ptr - buf));
view_addr.push_back(handles.back().id());
} else {
view_addr.push_back(dim.get_label_name());
