They're actually opening up the CLR and making changes to it now, so it's not all compiler tricks!
That's indeed true for the default interface implementation, but I believe for nullability it's just compiler warnings. At runtime, nothing will be left in the IL for this. It just isn't possible to do that and maintain backward compatibility