view tests/mini/aa7.d @ 490:f8c979770af3

Fixed a critical bug in the runtime, where _d_allocmemoryT would mark the memory block as having pointers (for scanning) opposite of what it should. So pointers would not be seen and freed. Should fix a bunch of regressions with AAs.
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Sun, 10 Aug 2008 17:28:01 +0200
parents a34078905d01
children
line wrap: on
line source
// adapted from dstress.run.a.associative_array_19_<n> to catch regressions early

module mini.aa7;

extern (C) int printf(char*, ...);
extern (C) void gc_collect();


int main(){
    char*[char] aa;

    char key = 'a';
    aa[key] = &key;
    gc_collect();
    assert(aa[key] == &key);
    assert(key in aa);

    return 0;
}