__cplusplus guard in c header