There will never be perfect translation from C to D, as semantics do differ and there are endless nutburger C extensions. But ImportC shows that even with being imperfect, it is a tremendous improvement over manual conversion.