Because the syntax says 0, not expression or some other non-terminal matching nullptr.
For all the time only 0 has worked. Even 0L would be ill-formed because it does not match the syntax.
Edit
Clang allows = 0x0, = 0b0 and = 00 (31.12.2013). That is incorrect and should be fixed in the compiler, of course.