Fix link errors with GCC 10 and binutils 2.34 on Fedora
[pintos-anon] / src / tests / userprog / no-vm / multi-oom.c
index 6a4472daed7575a319e0ee57cdf26836af34f5bd..be0668a46d8c6dbbf94ef296abd10dca1296e586 100644 (file)
@@ -27,8 +27,6 @@
 static const int EXPECTED_DEPTH_TO_PASS = 30;
 static const int EXPECTED_REPETITIONS = 10;
 
-const char *test_name = "multi-oom";
-
 enum child_termination_mode { RECURSE, CRASH };
 
 /* Spawn a recursive copy of ourselves, passing along instructions
@@ -67,15 +65,15 @@ consume_some_resources_and_die (int seed)
 {
   consume_some_resources ();
   random_init (seed);
-  int *PHYS_BASE = (int *)0xC0000000;
+  volatile int *PHYS_BASE = (volatile int *)0xC0000000;
 
   switch (random_ulong () % 5)
     {
       case 0:
-        *(int *) NULL = 42;
+        *(volatile int *) NULL = 42;
 
       case 1:
-        return *(int *) NULL;
+        return *(volatile int *) NULL;
 
       case 2:
         return *PHYS_BASE;
@@ -107,6 +105,8 @@ main (int argc, char *argv[])
 {
   int n;
 
+  test_name = "multi-oom";
+
   n = argc > 1 ? atoi (argv[1]) : 0;
   bool is_at_root = (n == 0);
   if (is_at_root)