-/* Copyright (c) 2019-2020. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2019-2022. 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. */
SG_BEGIN_DECL
#ifdef COVERAGE
+
+#if defined(__GNUC__) && __GNUC__ >= 11
+#include "gcov.h"
+#define coverage_checkpoint() \
+ do { \
+ __gcov_dump(); \
+ __gcov_reset(); \
+ } while (0)
+#else
extern void __gcov_flush();
#define coverage_checkpoint() __gcov_flush()
+#endif
+
#else
#define coverage_checkpoint() (void)0
#endif