You must not using signed integers in pointer arithmetic, just because memory 
address can't be negative and can be higher, then **0x8000_0000** for 32 bit 
platforms and **0x8000_0000_0000_0000** for 64 bit platforms. So
    
    
    var newp = cast[pointer](cast[uint](oldp) + 1u)
    

Reply via email to