-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Removed use of =default for vector types #543
Conversation
Defaulting the copy constructor and copy assignment operators causes compiler errors when the type T is not trivially copyable. In that case, explicitly defined copy ctor and assignment are required. This PR removes the #ifdefs around the existing operators, so they're always used.
This PR does not deal with the case yet when |
I don't think this is the proper fix but that should be or great help to build a define allowing the behavior you are looking for. Thanks, |
Are you considering merging this PR? It would be nice to lift this artificial restriction of not being able to put in non-trivially copyable types because of the In my experience so far with my custom type as T in vec* / mat* / quat*, all of GLMs functionality I've tried worked without any issues whatsoever, the basic math operations work out of the box as well as functions like glm::project and so on. I think that's a big gain. Thanks very much, |
This issue is partially fixed in master and 0.9.8 branches. I still need to add tests to be good to go. Thanks for reporting, |
Looks great! Thank you very much for your effort! :-) |
Defaulting the copy constructor and copy assignment operators causes compiler errors when the type T is not trivially copyable. In that case, explicitly defined copy ctor and assignment are required. This PR removes the #ifdefs around the existing operators, so they're always used.