From 8d60cc47948a4f96422b1e243b7561969e84a095 Mon Sep 17 00:00:00 2001 From: Roberto Martin Fantini Date: Thu, 5 Nov 2026 20:31:56 +0100 Subject: [PATCH] Correct the set message printer --- examples/message_printer/message_printer.h | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/examples/message_printer/message_printer.h b/examples/message_printer/message_printer.h index 7e5d84c..2fe3740 100644 --- a/examples/message_printer/message_printer.h +++ b/examples/message_printer/message_printer.h @@ -134,7 +134,19 @@ class message_printer void visit(const set_cref& ref) { - os_ << "0b" << std::bitset<16>{ref.value()}; + bool initial = true; + for (uint64_t bit_index = 0; bit_index < ref.instruction()->num_elements_; ++bit_index) + { + const bool is_set = (ref.value() >> bit_index) & 0x01; + if (!is_set) + continue; + + if (!initial) + os_ << "|"; + initial = false; + + os_ << ref.instruction()->elements_[bit_index]; + } } };