--- /dev/null
+/* Copyright (c) 2016-2021. The SimGrid Team. All rights reserved. */
+
+/* This program is free software; you can redistribute it and/or modify it
+ * under the terms of the license (GNU LGPL) which comes with this package. */
+
+#include "src/mc/checker/UdporChecker.hpp"
+#include <xbt/log.h>
+
+XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_udpor, mc, "Logging specific to MC safety verification ");
+
+namespace simgrid {
+namespace mc {
+
+UdporChecker::UdporChecker() : Checker() {}
+
+void UdporChecker::run() {}
+
+RecordTrace UdporChecker::get_record_trace()
+{
+ RecordTrace res;
+ return res;
+}
+
+std::vector<std::string> UdporChecker::get_textual_trace()
+{
+ std::vector<std::string> trace;
+ return trace;
+}
+
+void UdporChecker::log_state() {}
+
+} // namespace mc
+} // namespace simgrid
\ No newline at end of file
--- /dev/null
+/* Copyright (c) 2007-2021. The SimGrid Team.
+ * All rights reserved. */
+
+/* This program is free software; you can redistribute it and/or modify it
+ * under the terms of the license (GNU LGPL) which comes with this package. */
+
+#ifndef SIMGRID_MC_UDPOR_CHECKER_HPP
+#define SIMGRID_MC_UDPOR_CHECKER_HPP
+
+#include "src/mc/checker/Checker.hpp"
+#include "src/mc/mc_record.hpp"
+
+namespace simgrid {
+namespace mc {
+
+class XBT_PRIVATE UdporChecker : public Checker {
+
+public:
+ explicit UdporChecker();
+ ~UdporChecker() override = default;
+ void run() override;
+ RecordTrace get_record_trace() override;
+ std::vector<std::string> get_textual_trace() override;
+ void log_state() override;
+
+
+};
+
+} // namespace mc
+} // namespace simgrid
+
+#endif
\ No newline at end of file
src/mc/checker/SimcallInspector.hpp
src/mc/checker/LivenessChecker.cpp
src/mc/checker/LivenessChecker.hpp
+ src/mc/checker/UdporChecker.cpp
+ src/mc/checker/UdporChecker.hpp
src/mc/inspect/DwarfExpression.hpp
src/mc/inspect/DwarfExpression.cpp