-/* What is defined here:
- * =====================
- *
- * MSG_WAIT_DESTROYS_COMMS 1 if MSG_wait destroys communications
- * (has changed after SimGrid 3.5)
- *
- * MSG_comm_get_status(comm) MSG_OK on SG 3.5 where it does not exist.
- */
-
-#if !defined(SIMGRID_VERSION) // ========== SimGrid <= 3.5 ============= //
-
-#define MSG_WAIT_DESTROYS_COMMS 1
-
-inline
-MSG_error_t MSG_comm_get_status(msg_comm_t /*comm*/)
-{
- return MSG_OK;
-}
-
-#else // ================================= SimGrid > 3.5 ============== //
-
-#define MSG_WAIT_DESTROYS_COMMS 0
-
-#endif // ============================================================= //
+#if defined(__has_include)
+# if __has_include(<simgrid/config.h>)
+# include <simgrid/config.h>
+# else
+# include <simgrid_config.h>
+# endif
+#else
+# warning "__has_include is not defined"
+#endif
+
+#if !defined(SIMGRID_VERSION) || SIMGRID_VERSION < 31800UL // == SG < 3.18 == //
+# error "Unsupported SimGrid version. Need version >= 3.18"
+#endif // =================================================================== //