Feature: `constexpr` default constructor
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 35/100
Research direction
Start by reading older issue #47 and reviewing the container types and hooks referenced here. Determine which default constructors need constexpr support and how the C++20 constinit use case should be validated. Done means the relevant default constructors support the requested initialization scenario without broadening the scope to general constexpr support.
Written by the indexing model from the issue text.
Description
Although in an older issue, it was concluded that general constexpr may be difficult to achieve, I believe there would be considerable benefit in just a constexpr default constructor for the container types and the hooks. Since C++20, we have the constinit specifier for global variables, which means the global can be initialised without running code, which is desirable especially in bare-metal/kernel scenarios, where there is little one can rely on during early boot. However, constinit requires a constexpr constructor, for obvious reasons. Global containers in bare-metal scenarios usually start-off empty, so a default constructor that is constexpr would already go a long way.
- Dominant language
- C++
- Stars
- 66
- Forks
- 74
- Avg merge
- 5h 22m
- Merged PRs (30d)
- 1
Getting set up
We have not checked this project's setup files yet. Start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from boostorg/intrusive
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
Difficulty 5/5 Over a week Newbie friendliness 20/100
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
All issues in boostorg/intrusive
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 92/100
sandialabs/seacas#945 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
ROCm/FastFlowLM#757 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 92/100
espressif/esp-matter#1867 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
mltframework/shotcut#1920 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day