Merge pull request #5428 from kumpera/wasm-support-p2
[mono.git] / mono / tests / thread_static_gc_layout.cs
1 using System;
2
3 public struct Sandwich
4 {
5         public IntPtr a;
6         public object b;
7         public IntPtr c;
8         public IntPtr d;
9 }
10
11 class Driver {
12         [ThreadStatic]
13         static Sandwich blt;
14         // const long initial_val = 0x0100000001L;
15         const int initial_val = 1;
16
17         static int Main ()
18         {
19                 blt.a = (IntPtr)initial_val;
20                 blt.b = new object ();
21                 blt.c = (IntPtr)initial_val;
22                 blt.d = (IntPtr)initial_val;
23                 GC.Collect ();
24                 return (blt.a == blt.c && blt.c == blt.d && blt.a == (IntPtr)initial_val) ? 0 : -1;
25         }
26 }