add missing extern(C)