Mercurial > projects > dstress
view run/rehash_01.d @ 1623:04022926a4d5
Fix dstress.run.b.bug_cod1_2528_C as reported by Don Clugston
Quoting Don's words from Ticket #8:
Fails because it returns 3 instead of 0.
The DStress test case is incorrect. The arrray literal is an int, so
it's 4 bytes. Casting it to void[] should give a length of 4 -- and
that's exactly what it does. Should be "return x.length - 4;".
author | Leandro Lucarella <llucax@gmail.com> |
---|---|
date | Fri, 05 Nov 2010 10:10:51 -0300 |
parents | 9e0847cf535a |
children |
line wrap: on
line source
// $HeadURL$ // $Date$ // $Author$ module dstress.run.rehash_01; int main(){ int[char[]] array; array["eins"]=1; array["zwei"]=2; array["drei"]=3; assert(array.length==3); int[char[]] rehashed=array.rehash; assert(rehashed is array); char[][] key = array.keys; assert(key.length==3); bool have[3]; assert(!have[0]); assert(!have[1]); assert(!have[2]); foreach(char[] value; key){ switch(value){ case "eins":{ have[0]=true; break; }case "zwei":{ have[1]=true; break; }case "drei":{ have[2]=true; break; }default:{ assert(0); } } } assert(have[0]); assert(have[1]); assert(have[2]); return 0; }