Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'mcs/tests/test-133.cs')
-rwxr-xr-xmcs/tests/test-133.cs36
1 files changed, 36 insertions, 0 deletions
diff --git a/mcs/tests/test-133.cs b/mcs/tests/test-133.cs
new file mode 100755
index 00000000000..1e27fc40631
--- /dev/null
+++ b/mcs/tests/test-133.cs
@@ -0,0 +1,36 @@
+using System;
+
+public struct S {
+ public int a, b;
+}
+
+class T {
+ enum OpCode : ushort { False }
+ enum OpFlags : ushort { None }
+ static void DecodeOp (ushort word, out OpCode op, out OpFlags flags) {
+ op = (OpCode)(word & 0x00ff);
+ flags = (OpFlags)(word & 0xff00);
+ }
+ static void get_struct (out S s) {
+ S ss;
+ ss.a = 1;
+ ss.b = 2;
+ s = ss;
+ }
+ static int Main() {
+ OpCode op;
+ OpFlags flags;
+ S s;
+ DecodeOp ((ushort)0x0203, out op, out flags);
+ if (op != (OpCode)0x3)
+ return 1;
+ if (flags != (OpFlags)0x200)
+ return 2;
+ get_struct (out s);
+ if (s.a != 1)
+ return 3;
+ if (s.b != 2)
+ return 4;
+ return 0;
+ }
+}