逆に定数じゃなきゃダメなのかしら。
int a = 1;
a--;
char *p = a;
あ、コンパイル時に無効なアドレスに変換できないからダメなのかな。