Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 223b54c064
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| template <class TKey, class TCompare = std::less<TKey>> | ||
| class set |
There was a problem hiding this comment.
Remove duplicate nested set class declaration
include/set.h now declares template<class TKey...> class set twice in the same scope without closing the first one, so the parser enters an invalid state and any translation unit that includes this header fails to compile (you can see follow-on errors where standard headers appear under fcpp::std). This blocks all builds that include set.h, not just specific inputs.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 93bc7191b3
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ~optional() | ||
| { | ||
| reset(); | ||
| } |
There was a problem hiding this comment.
Restore deep-copy semantics in C++11 optional
In the non-C++17 fcpp::optional implementation, this class still owns heap memory (_value) and deletes it in the destructor, but this change removed the custom copy constructor and copy-assignment operator. That means the compiler now generates shallow-copy operations, so copying/assigning one optional to another makes both objects point to the same allocation and leads to double-delete/use-after-free when either instance is destroyed or reassigned. This affects any C++11/C++14 build path that copies optional_t<T> values.
Useful? React with 👍 / 👎.
No description provided.