| Title | dvidelabs flatcc v0.6.3 Reachable Assertion |
|---|
| Description | align_order_members() sorts a table's member list by a computed order key k and asserts k > 0 before inserting into the ordering list (src/compiler/semantics.c:1059). When the same member name is declared twice, the second declaration's key collapses to 0 and the assert(k > 0) aborts the compile. Duplicate members are a plausible user typo, not an exceptional input — the parser should emit a redefinition error, not crash.
Affected versions: flatcc v0.6.3
Severity: Medium (reachable assertion abort / SIGABRT; crash/DoS of the schema compiler)
CWE: CWE-617 (Reachable Assertion) |
|---|
| Source | ⚠️ https://github.com/dvidelabs/flatcc/issues/387 |
|---|
| User | lrrh (UID 100159) |
|---|
| Submission | 08/08/2026 10:41 (1 month ago) |
|---|
| Moderation | 09/13/2026 15:01 (1 month later) |
|---|
| Status | Accepted |
|---|
| VulDB entry | 403292 [Dvidelabs flatcc up to 0.6.3 Duplicate Symbol src/compiler/semantics.c align_order_members assertion] |
|---|
| Points | 20 |
|---|