Jason H
2018-04-13 15:19:18 UTC
I'm trying out the new clazy and fixit support in 4.6.
I have a few observations, I'm hoping people can suggest how to fix them. (No pun intended).
Most of these are not QtCreator's fault, but some are. The question for those are how does QtC help manage them?
1. Header guards are not detected, and when I fit-insert them, they hardcode the FULL path.
2. I have lightbulbs everywhere that don't do anything when I click on them. (see attached, 2 pics)
3. move semantics vs const ref. If I apply the fix-it to use copy/std::move, the then immediately get another one to apply const-ref. Which one is right?
4. Move constructor definition to .h (for constructors) is this "a thing"?
5. Not sure what it takes, but a fixit for "warning: {class} has virtual functions but non-virtual destructor" should have minimally a fix as "~{class}() override = default;"
6. I find it confusing to have the triangle warning: off to the right but the lightbulb at the the end of the text. (Also attached) It would be cool if the lightbulb could be the triangle (or vise-versa) and clicking on it would fix it.
7. Double-clicking on fix gets me every time. I click, wait, oh, double-click.
8. "error: static_cast from {derivedclass*} to {baseclass*}, which are not related by inheritance..." and variations of the above... It seems that whatever is claiming this is flat out wrong because deriveddclass is actually derived from baseclass.
I have a few observations, I'm hoping people can suggest how to fix them. (No pun intended).
Most of these are not QtCreator's fault, but some are. The question for those are how does QtC help manage them?
1. Header guards are not detected, and when I fit-insert them, they hardcode the FULL path.
2. I have lightbulbs everywhere that don't do anything when I click on them. (see attached, 2 pics)
3. move semantics vs const ref. If I apply the fix-it to use copy/std::move, the then immediately get another one to apply const-ref. Which one is right?
4. Move constructor definition to .h (for constructors) is this "a thing"?
5. Not sure what it takes, but a fixit for "warning: {class} has virtual functions but non-virtual destructor" should have minimally a fix as "~{class}() override = default;"
6. I find it confusing to have the triangle warning: off to the right but the lightbulb at the the end of the text. (Also attached) It would be cool if the lightbulb could be the triangle (or vise-versa) and clicking on it would fix it.
7. Double-clicking on fix gets me every time. I click, wait, oh, double-click.
8. "error: static_cast from {derivedclass*} to {baseclass*}, which are not related by inheritance..." and variations of the above... It seems that whatever is claiming this is flat out wrong because deriveddclass is actually derived from baseclass.