Mercurial > projects > ldc
annotate test/multiarr1.d @ 277:90a8c798b0db trunk
[svn r298] Eliminated the dmd/link.c source file entirely in favor of a llvm::sys based approach to the same functionality.
author | lindquist |
---|---|
date | Fri, 20 Jun 2008 22:09:04 +0200 |
parents | 61615fa85940 |
children | 385a18242485 |
rev | line source |
---|---|
64
b688ad419f8c
[svn r68] Added support for multi-dimensional static arrays.
lindquist
parents:
diff
changeset
|
1 module multiarr1; |
b688ad419f8c
[svn r68] Added support for multi-dimensional static arrays.
lindquist
parents:
diff
changeset
|
2 |
b688ad419f8c
[svn r68] Added support for multi-dimensional static arrays.
lindquist
parents:
diff
changeset
|
3 void main() |
b688ad419f8c
[svn r68] Added support for multi-dimensional static arrays.
lindquist
parents:
diff
changeset
|
4 { |
b688ad419f8c
[svn r68] Added support for multi-dimensional static arrays.
lindquist
parents:
diff
changeset
|
5 int[16][16] a; |
b688ad419f8c
[svn r68] Added support for multi-dimensional static arrays.
lindquist
parents:
diff
changeset
|
6 a[10][13] = 42; |
94
61615fa85940
[svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents:
64
diff
changeset
|
7 //assert(a[0][0] == 0); |
61615fa85940
[svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents:
64
diff
changeset
|
8 //assert(a[10][13] == 42); |
61615fa85940
[svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents:
64
diff
changeset
|
9 { |
61615fa85940
[svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents:
64
diff
changeset
|
10 int* l = cast(int*)a; |
61615fa85940
[svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents:
64
diff
changeset
|
11 l += 10*16+13; |
61615fa85940
[svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents:
64
diff
changeset
|
12 assert(*l == 42); |
61615fa85940
[svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents:
64
diff
changeset
|
13 } |
64
b688ad419f8c
[svn r68] Added support for multi-dimensional static arrays.
lindquist
parents:
diff
changeset
|
14 } |