summaryrefslogtreecommitdiff
path: root/src/hir/deserialise.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/hir/deserialise.cpp')
-rw-r--r--src/hir/deserialise.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/hir/deserialise.cpp b/src/hir/deserialise.cpp
index 1cf5f0e0..08662fe2 100644
--- a/src/hir/deserialise.cpp
+++ b/src/hir/deserialise.cpp
@@ -338,10 +338,13 @@ namespace {
case 2: {
auto entries = deserialise_vec_c< ::MacroExpansionEnt>( [&](){ return deserialise_macroexpansionent(); } );
auto joiner = deserialise_token();
- ::std::set<unsigned int> variables;
+ ::std::map<unsigned int, bool> variables;
size_t n = read_count();
- while(n--)
- variables.insert( static_cast<unsigned int>(read_count()) );
+ while(n--) {
+ auto idx = static_cast<unsigned int>(read_count());
+ bool flag = read_bool();
+ variables.insert( ::std::make_pair(idx, flag) );
+ }
return ::MacroExpansionEnt::make_Loop({
mv$(entries), mv$(joiner), mv$(variables)
});