• paperplane@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    3 months ago

    Projects for Apple platforms usually also use .h, where it could mean anything from C/C++ to Objective-C/C++.

    In practice, Clang handles mixed C/C++/Obj-C codebases pretty well and determining the language for a header never really felt like an issue since the API would usually already imply it (declaring a C++ class and/or Obj-C class would require the corresponding language to consume it).

    If a C++ header is intended to be consumed from C, adding the usual #ifdef __cplusplus extern "C" {... should alleviate the name mangling issues.