-
-
Notifications
You must be signed in to change notification settings - Fork 21.6k
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
Port member default initialization from constructor to declaration (C++11) #38697
Conversation
e85b4cf
to
0c85c3b
Compare
0c85c3b
to
ae73181
Compare
451d99c
to
d16b94e
Compare
Alright, I went through all of Which also mean probably one or two PEBKACs that may result in a broken engine... we'll see :) |
d16b94e
to
03cdfff
Compare
Marking as WIP again as it needs more testing, I spotted a few regressions:
|
03cdfff
to
8a74530
Compare
Just to note, I've made some similar changes while developing some custom module in C++, and I've had linker errors related to undefined constructors, then after |
Taking some notes for myself:
Reverting changes to
After reverting all my changes... turns out it's a bug in the |
8a74530
to
7ee7406
Compare
I had removed too much stuff from the
Confirmed in the |
Using `clang-tidy`'s `modernize-use-default-member-init` check and manual review of the changes, and some extra manual changes that `clang-tidy` failed to do. Also went manually through all of `core` to find occurrences that `clang-tidy` couldn't handle, especially all initializations done in a constructor without using initializer lists.
7ee7406
to
1f6f364
Compare
It seems to work well in my tests, so I'll merge. I'd still welcome a review by senior devs on the changes in |
I turned it off by mistake in godotengine#38697. See also godotengine#62664 for details on this boolean's complex history :)
Using
clang-tidy
'smodernize-use-default-member-init
check andmanual review of the changes, and some extra manual changes that
clang-tidy
failed to do.The changes were initially done by calling
run-clang-tidy.py -fix
with the provided config, and using the newly merged feature that gives us a compilation database (#32848). It's not perfect though, it made some bogus changes which led to compilation errors which I had to fix manually.