Johannes Pfau:

//In runtime:
enum int* SOME_REG = 0xFFFF;

//In user code
peek(SOME_REG);
poke(SOME_REG);
*SOME_REG = 1; //Oops, forgot poke! This is not acceptable

Perhaps this syntax:

volatile enum int* SOME_REG = 0xFFFF;

Could turn this in a syntax error (only peek/poke are allowed to write and read from this address):

*SOME_REG = 1;

Bye,
bearophile

Reply via email to