X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ea74f5d95928a521a588737e81f1de94eef25d19..196b543c8e909828b40e851eaf4443ee28f76c70:/src/mc/sosp/Snapshot.cpp diff --git a/src/mc/sosp/Snapshot.cpp b/src/mc/sosp/Snapshot.cpp index c58c306a6c..6b07c1f544 100644 --- a/src/mc/sosp/Snapshot.cpp +++ b/src/mc/sosp/Snapshot.cpp @@ -10,8 +10,7 @@ #include /* std::size_t */ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_snapshot, mc, "Taking and restoring snapshots"); -namespace simgrid { -namespace mc { +namespace simgrid::mc { /************************************* Take Snapshot ************************************/ /****************************************************************************************/ @@ -58,6 +57,12 @@ static void fill_local_variables_values(mc_stack_frame_t stack_frame, Frame* sco if (not valid_variable(¤t_variable, scope, (void*)stack_frame->ip)) continue; + if (not current_variable.type) { + XBT_VERB("Ignore local variable without type: '%s' [%s]", current_variable.name.c_str(), + stack_frame->frame->name.c_str()); + continue; + } + s_local_variable_t new_var; new_var.subprogram = stack_frame->frame; new_var.ip = stack_frame->ip; @@ -194,9 +199,9 @@ static void snapshot_ignore_restore(const simgrid::mc::Snapshot* snapshot) remote(ignored_data.start)); } -Snapshot::Snapshot(int num_state, RemoteProcess* process) : AddressSpace(process), num_state_(num_state) +Snapshot::Snapshot(long num_state, RemoteProcess* process) : AddressSpace(process), num_state_(num_state) { - XBT_DEBUG("Taking snapshot %i", num_state); + XBT_DEBUG("Taking snapshot %ld", num_state); for (auto const& p : process->actors()) enabled_processes_.insert(p.copy.get_buffer()->get_pid()); @@ -271,7 +276,7 @@ Region* Snapshot::get_region(const void* addr, Region* hinted_region) const void Snapshot::restore(RemoteProcess* process) const { - XBT_DEBUG("Restore snapshot %i", num_state_); + XBT_DEBUG("Restore snapshot %ld", num_state_); // Restore regions for (std::unique_ptr const& region : snapshot_regions_) { @@ -283,5 +288,4 @@ void Snapshot::restore(RemoteProcess* process) const process->clear_cache(); } -} // namespace mc -} // namespace simgrid +} // namespace simgrid::mc