Skip to content

Conversation

@ryanmrichard
Copy link
Contributor

The original templated ctor has a signature compatible with copy/move construction and a higher precedence than the copy/move ctors. In turn, attempting to copy/move a Molecule object causes the compiler to pick the templated ctor, which leads to a compiler error.

This PR:

  • Introduces SFINAE to fix the titular problem.
  • Adds unit tests so this doesn't break again.
  • Removes the use of some deprecated C++ standard library functions.

Copy link
Owner

@wavefunction91 wavefunction91 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lgtm, thanks!

@wavefunction91 wavefunction91 merged commit 008959e into wavefunction91:master May 15, 2025
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants