ChrisR: i'd suspect that it's also not kosher to dereference a Const pointer.

Huh? A pointer you can't dereference isn't much of a pointer, is it.

There's no problem dereferencing a constant pointer. In fact, arrays in C are (in a certain sense) nothing more than a constant pointer.

ChrisR: If a dereference is allowed then the program can backdoor a method to change the value by casting it to another type and then doing an assign.

Isn't that the whole point of casting in C? :-)