Skip to content

Develop version 2.1-dev.0 breaks ABI compatiblity #126

@hellkite500

Description

@hellkite500

The accepted inclusion of get_bmi_version in #111 moves BMI from version 2.0 to version 2.1-dev.0.

By adding this to function name to the namespace, it will break ABI compatibility for all compiled headers in the supported languages (C, C++, Fortran). For example, if a model builds against version 2.1, but some other model/utility is built with version 2.0, the runtime behavior of using the two together is likely to lead to undefined behavior and segmentation faults.

I haven't seen this inclusion land on the implemented interfaces for the various languages yet, but I'm wondering if this should land in a major (non-backwards compatible) version, like BMI 3.0 instead?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions