eclipse-iceoryx / eclipse-iceoryx/iceoryx

Enums in C-binding are not extendable in a binary compatible and sane way

Open
#1,073 1 comment 0 reactions 0 assignees View on GitHub
bug
Dominant language
C++
Stars
2.2k
Forks
492
Avg merge
18h 57m
Merged PRs (30d)
1

Description

## Required information

**Operating system:**
all

**Compiler version:**
all

**Observed result or behaviour:**
The enums in the C-binding have an `Name_SUCCESS` value as last element in the enums. This results in constant ABI breakings when new enum values are added or the `Name_SUCCESS` value will end somewhere in the middle of the enum

**Expected result or behaviour:**
Enum values can be appended without breaking ABI and without having the `Name_SUCCESS` somewhere in the middle of the enum

**Conditions where it occurred / Performed steps:**
C-Binding

Contributor guide

Open the contributing guide

Research direction

Start by locating the C-binding enum declarations and reviewing how their success values are defined and exposed. Check the project's compatibility expectations for adding enum values. Done means new enum values can be appended without an ABI break and the success value does not move into the middle of an enum.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
api
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.