Mercurial > projects > ldc
view tests/mini/ptrarith.d @ 834:f466f475b654
Added proper "need 'this' to access member foo" errors instead of "variable foo not resolved" for some cases, added FIXME for the old error!
Added a bit more information to the runtime's cyclic dependency detection exception.
author | Tomas Lindquist Olsen <tomas.l.olsen@gmail.com> |
---|---|
date | Tue, 09 Dec 2008 01:56:39 +0100 |
parents | 1bb99290e03a |
children |
line wrap: on
line source
extern(C) int printf(char*, ...); void main() { printf("Pointer arithmetic test\n"); int* p; printf("0x%x\n", p); assert(p++ is null); assert(cast(size_t)p == 4); printf("0x%x\n", p); p--; assert(p is null); printf("0x%x\n", p); int d = 4; p+=d; printf("0x%x\n", p); assert(cast(size_t)p == 16); d = 2; p+=d; printf("0x%x\n", p); assert(cast(size_t)p == 0x18); d = 6; p-=d; printf("0x%x\n", p); assert(p is null); printf(" SUCCESS\n"); } void fill_byte_array(ubyte* a, size_t n, ubyte v) { auto p = a; auto end = a+n; while (p !is end) *p++ = v; }