Skip to content

Commit 61d117a

Browse files
committed
Merge remote-tracking branch 'origin/develop'
2 parents 812ea2a + a8704ec commit 61d117a

File tree

4 files changed

+14
-11
lines changed

4 files changed

+14
-11
lines changed

bindings/python/ast.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -459,7 +459,7 @@ void bind_proof_trace(py::module_ &m) {
459459
.def_property_readonly("trace", &llvm_rewrite_trace::get_trace)
460460
.def_static(
461461
"parse",
462-
[](py::bytes const &bytes, kore_header const &header) {
462+
[](py::bytes const &bytes, std::shared_ptr<kore_header> &header) {
463463
proof_trace_parser parser(false, false, header);
464464
auto str = std::string(bytes);
465465
return parser.parse_proof_trace(str, false);
@@ -486,7 +486,8 @@ void bind_proof_trace(py::module_ &m) {
486486
.def("__repr__", print_repr_adapter<llvm_rewrite_trace_iterator>(true))
487487
.def_static(
488488
"from_file",
489-
[](std::string const &filename, kore_header const &header) {
489+
[](std::string const &filename,
490+
std::shared_ptr<kore_header> const &header) {
490491
std::ifstream file(filename, std::ios_base::binary);
491492
return llvm_rewrite_trace_iterator(
492493
std::make_unique<proof_trace_file_buffer>(std::move(file)),

include/kllvm/binary/ProofTraceParser.h

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -328,7 +328,7 @@ class proof_trace_parser {
328328
private:
329329
bool verbose_;
330330
bool expand_terms_;
331-
[[maybe_unused]] kore_header const &header_;
331+
[[maybe_unused]] std::shared_ptr<kore_header> header_;
332332
[[maybe_unused]] std::optional<kore_definition> kore_definition_
333333
= std::nullopt;
334334

@@ -342,7 +342,7 @@ class proof_trace_parser {
342342
|| magic[3] != '2') {
343343
return nullptr;
344344
}
345-
auto result = detail::read_v2(buffer, header_, pattern_len);
345+
auto result = detail::read_v2(buffer, *header_, pattern_len);
346346
pattern_len += 4;
347347
return result;
348348
}
@@ -701,7 +701,7 @@ class proof_trace_parser {
701701

702702
public:
703703
proof_trace_parser(
704-
bool verbose, bool expand_terms, kore_header const &header,
704+
bool verbose, bool expand_terms, std::shared_ptr<kore_header> header,
705705
std::optional<kore_definition> kore_definition = std::nullopt);
706706

707707
std::optional<llvm_rewrite_trace> parse_proof_trace_from_file(
@@ -723,7 +723,8 @@ class llvm_rewrite_trace_iterator {
723723

724724
public:
725725
llvm_rewrite_trace_iterator(
726-
std::unique_ptr<proof_trace_buffer> buffer, kore_header const &header);
726+
std::unique_ptr<proof_trace_buffer> buffer,
727+
std::shared_ptr<kore_header> header);
727728
[[nodiscard]] uint32_t get_version() const { return version_; }
728729
std::optional<annotated_llvm_event> get_next_event();
729730
void print(

lib/binary/ProofTraceParser.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -130,9 +130,10 @@ void llvm_event::print(
130130
}
131131

132132
llvm_rewrite_trace_iterator::llvm_rewrite_trace_iterator(
133-
std::unique_ptr<proof_trace_buffer> buffer, kore_header const &header)
133+
std::unique_ptr<proof_trace_buffer> buffer,
134+
std::shared_ptr<kore_header> header)
134135
: buffer_(std::move(buffer))
135-
, parser_(false, false, header) {
136+
, parser_(false, false, std::move(header)) {
136137
if (!proof_trace_parser::parse_header(*buffer_, kind_, version_)) {
137138
throw std::runtime_error("invalid header");
138139
}
@@ -250,11 +251,11 @@ void llvm_rewrite_trace::print(
250251
}
251252

252253
proof_trace_parser::proof_trace_parser(
253-
bool verbose, bool expand_terms, kore_header const &header,
254+
bool verbose, bool expand_terms, std::shared_ptr<kore_header> header,
254255
std::optional<kore_definition> kore_definition)
255256
: verbose_(verbose)
256257
, expand_terms_(expand_terms)
257-
, header_(header)
258+
, header_(std::move(header))
258259
, kore_definition_(std::move(kore_definition)) { }
259260

260261
std::optional<llvm_rewrite_trace> proof_trace_parser::parse_proof_trace(

tools/kore-proof-trace/main.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ int main(int argc, char **argv) {
5151
cl::ParseCommandLineOptions(argc, argv);
5252

5353
FILE *in = fopen(header_path.getValue().c_str(), "r");
54-
kore_header header(in);
54+
auto header = std::make_shared<kore_header>(in);
5555
fclose(in);
5656

5757
if (use_streaming_parser) {

0 commit comments

Comments
 (0)