For two pointer types to be compatible, the types they point to must be compatible and the two pointers must be identically qualified. Recall that the qualifiers for a pointer are specified after the *, so that these two declarations
int *const cpi; int *volatile vpi; |
declare two differently qualified pointers to the same type, int.