On Jul 16, 2012, at 4:36 PM, Duncan Sands wrote: > Hi Tristan, > >> Ah, what you want is the use of 'void *' for System.Address. >> We didn't choose that because the semantic of System.Address (which includes >> arithmetic on the whole address space) doesn't match the void * one. > > void* arithmetic of this kind exists, it's a gcc extension to C :)
The issue is not void * vs char *, but the fact that the C standard has restriction on pointer arithmetic. >> But, you can try to implement this scheme by modifying the runtime. I don't >> know if this is a small work or not. > > It crashes the front-end, so it's not trivial. :-)