fix extern(D) calling convention

http://forum.dlang.org/thread/zogygbvfszssudpaejwo@forum.dlang.org

Merely a quick sketch. Feel free to suggest a clean way.
Follows typfunc model with additional check where it's used (cod1.c funccall).
In cv4_func there's no such check so I don't know.
This alters ``extern(Pascal)``, right?  (I know we treat this extern as ``(C)`` in GDC, but changing this is not mentioned in either the PR title not any commit messages)