@simgrid_need_asprintf@
@simgrid_need_vasprintf@
+#include <stdio.h> /* FILE, getline if it exists */
+
/* Use that config to declare missing elements */
#ifdef SIMGRID_NEED_GETLINE
#include <stdlib.h> /* size_t */
-#include <stdio.h> /* FILE* */
XBT_PUBLIC(long) getline(char **lineptr, size_t * n, FILE * stream);
-#else
-#ifndef _GNU_SOURCE
- #define _GNU_SOURCE
-#endif
-#include <stdio.h>
#endif
+
#include <stdarg.h>
/* snprintf related functions */
#ifndef XBT_MISC_H
#define XBT_MISC_H
+/* Define _GNU_SOURCE for getline, isfinite, etc. */
+#ifndef _GNU_SOURCE
+ #define _GNU_SOURCE
+#endif
+
/* Attributes are only in recent versions of GCC */
#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 4))
# define _XBT_GNUC_PRINTF( format_idx, arg_idx ) \
#include "smx_private.h"
#include "mc/mc.h"
#include "xbt/ex.h"
-
-#ifndef _SVID_SOURCE
-# define _SVID_SOURCE /* strdup() */
-#endif
-#ifndef _ISOC99_SOURCE
-# define _ISOC99_SOURCE /* isfinite() */
-#endif
-#ifndef _ISO_C99_SOURCE
-# define _ISO_C99_SOURCE /* isfinite() */
-#endif
#include <math.h> /* isfinite() */
XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(simix);