SG_BEGIN_DECL
/** Cache the size of a memory page for the current system. */
-XBT_PUBLIC_DATA int xbt_pagesize;
+XBT_PUBLIC_DATA const int xbt_pagesize;
/** Cache the number of bits of addresses inside a given page, log2(xbt_pagesize). */
-XBT_PUBLIC_DATA int xbt_pagebits;
+XBT_PUBLIC_DATA const int xbt_pagebits;
/** Helps ensuring that header version (SIMGRID_VERSION_MAJOR and friends) and dynamic library version do match. */
XBT_PUBLIC void sg_version_check(int lib_version_major, int lib_version_minor, int lib_version_patch);
"Whether to cleanup SimGrid at exit. Disable it if your code segfaults after its end.",
true};
-int xbt_pagesize;
-int xbt_pagebits = 0;
+const int xbt_pagesize = static_cast<int>(sysconf(_SC_PAGESIZE));
+const int xbt_pagebits = static_cast<int>(log2(xbt_pagesize));
/* Declare xbt_preinit and xbt_postexit as constructor/destructor of the library.
* This is crude and rather compiler-specific, unfortunately.
static void xbt_preinit()
{
- xbt_pagesize = static_cast<int>(sysconf(_SC_PAGESIZE));
- xbt_pagebits = static_cast<int>(log2(xbt_pagesize));
-
xbt_log_preinit();
xbt_dict_preinit();
atexit(xbt_postexit);