Jo Shields a575963da9 Imported Upstream version 3.6.0
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
2014-08-13 10:39:27 +01:00

139 lines
2.2 KiB
C#

//
// This test excercises array access on single dimension, multi-dimension
// and jagged arrays.
//
using System;
class X {
static void m (int [] a)
{
a [0] = 0xdead;
}
static int test_int_single_dim ()
{
int [] a = new int [10];
int i;
for (i = 0; i < 10; i++)
a [i] = i;
m (a);
if (a [0] != 0xdead)
return 1;
a [0] = 0;
for (i = 9; i >= 0; i--){
if (a [i] != i)
return 2;
}
return 0;
}
static int simple_test_double_dim ()
{
int [,] b = new int [10, 10];
b [0, 0] = 1;
b [4, 4] = 1;
if (b [0, 0] != b [4, 4])
return 20;
if (b [1, 1] != b [5, 5])
return 21;
return 0;
}
// static void dd (int [,] b)
// {
// int i, j;
//
// for (i = 0; i < 10; i++)
// for (j = 0; j < 10; j++)
// b [i, j] = b [i, j] + 1;
// }
//
// static int test_int_double_dim ()
// {
// int [,] b = new int [10,10];
// int i, j;
//
// for (i = 0; i < 10; i++)
// for (j = 0; j < 10; j++)
// b [i,j] = i * 10 + j;
//
// dd (b);
//
// for (i = 0; i < 10; i++)
// for (j = 0; j < 10; j++)
// if (b [i,j] != i *10 + j + 1){
// Console.WriteLine ("Expecting " + (i * 10 + j + 1) + "got: " + b [i,j]);
// return 10;
// }
//
// return 0;
// }
// static int test_jagged ()
// {
// int [][] a = new int [10][];
// int i;
//
// for (i = 0; i < 10; i++){
// if (a [i] != null)
// return 20;
//
// a [i] = new int [10];
//
// for (int j = 0; j < 10; j++){
// int q;
// a [i][j] = j * 10;
// q = a [i][j] = j * 10;
//
// a [i][j]++;
//
// if (a [i][j] != q + 1)
// return 21;
// }
// }
//
// return 0;
// }
public static int Main ()
{
int v;
Console.WriteLine ("hello");
return 0;
#if FIXME
v = test_int_single_dim ();
if (v != 0)
return v;
// v = test_int_double_dim ();
// if (v != 0)
// return v;
//
// v = test_jagged ();
v = simple_test_double_dim ();
if (v != 0)
return v;
int [] a = new int [10];
int i;
for (i = 0; i < 10; i++){
a [i] = i;
// a [i]++;
// Console.WriteLine ("Should be: " + (i + 1) + " it is = " + a [i]);
}
return 0;
#endif
}
}