https://github.com/simonjwright/minimal_containers
Author:GPL-3.0-or-later WITH GCC-exception-3.1
Version:1.2.0
Alire CI: Dependencies:No dependency.
Dependents:No dependents.
Badge:
The motivation for these containers was use in ColdFrame, an open-source code generator backend for use with UML tools in a restricted environment (a BBC micro:bit).
In such an environment, it’s normal to strip out unused code and data at link time (-gc-sections
with GNU ld
, -dead_strip
with Apple ld
).
Unfortunately, it turns out that no primitive subprograms of tagged types can be stripped (they are all referenced by the dispatch table).
These containers are still tagged, because (without compiler extensions) ColdFrame expects to use prefixed notation (object.primitive subprogram (…), as would users). However, the number of subprograms has been much reduced.