Reenable modernize-use-override
Categories
(Developer Infrastructure :: Source Code Analysis, task)
Tracking
(Not tracked)
People
(Reporter: saschanaz, Assigned: saschanaz)
References
(Depends on 1 open bug)
Details
Attachments
(2 files, 14 obsolete files)
Quite some matches but most of them are generated by parser and should not be hard to fix.
By fix I mean splitting NS_IMETHOD into NS_IMETHOD_BASE (with virtual) and NS_IMETHOD (without virtual).
| Assignee | ||
Comment 1•4 years ago
|
||
| Assignee | ||
Comment 2•4 years ago
|
||
Depends on D139166
| Assignee | ||
Comment 3•4 years ago
|
||
Depends on D139167
| Assignee | ||
Comment 4•4 years ago
|
||
Depends on D139168
| Assignee | ||
Comment 5•4 years ago
|
||
Depends on D139169
| Assignee | ||
Comment 6•4 years ago
|
||
Depends on D139170
| Assignee | ||
Comment 7•4 years ago
|
||
Depends on D139171
| Assignee | ||
Comment 8•4 years ago
|
||
Depends on D139172
| Assignee | ||
Comment 9•4 years ago
|
||
Depends on D139173
| Assignee | ||
Comment 10•4 years ago
|
||
Depends on D139174
| Assignee | ||
Comment 11•4 years ago
|
||
Depends on D139175
| Assignee | ||
Comment 12•4 years ago
|
||
Depends on D139176
| Assignee | ||
Comment 13•4 years ago
|
||
Depends on D139177
| Assignee | ||
Comment 14•4 years ago
|
||
Depends on D139178
| Assignee | ||
Comment 15•4 years ago
•
|
||
Hi Nika, NI'ing you as this touches XPCOM.
The intention is to split virtual keyword out of NS_IMETHOD to make our code compatible with modernize-use-override (which is basically "use virtual or override but not both").
Current:
class Foo {
NS_IMETHOD Bar();
};
class Bar: public Foo {
NS_IMETHOD Bar() override;
};
And my patches:
class Foo {
virtual NS_IMETHOD Bar();
};
class Bar: public Foo {
NS_IMETHOD Bar() override;
};
Please ping me if you have some concerns, thank you!
| Assignee | ||
Comment 16•4 years ago
|
||
Depends on D139179
Comment 17•4 years ago
|
||
It feels pretty weird that we'd allow non-virtual NS_IMETHOD. Can we instead fix the lint so that it doesn't complain about keywords coming from macro expansion?
| Assignee | ||
Comment 18•4 years ago
•
|
||
"Fix the lint" or maybe "add the lint" to force NS_IMETHOD be virtual? (I believe modifying a clang builtin lint is not very recommended and I don't think it's doing wrong)
| Assignee | ||
Comment 19•4 years ago
•
|
||
The earlier version of my patches used #define NS_IMETHOD_BASE virtual NS_IMETHOD, that should also work. (Or maybe not...)
Comment 20•4 years ago
|
||
(In reply to Kagami :saschanaz from comment #18)
"Fix the lint" or maybe "add the lint" to force NS_IMETHOD be virtual?
I mean, that'd be another option I guess.
(I believe modifying a clang builtin lint is not very recommended and I don't think it's doing wrong)
There's tons of clang warnings that behave differently to support macro expansion IIRC, so maybe such a thing would be acceptable upstream.
| Assignee | ||
Comment 21•4 years ago
|
||
Hmm, in that case I'll at least file an issue.
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
| Assignee | ||
Comment 22•4 years ago
•
|
||
Okay, I now think comment #17 makes sense, actually a lot. Filed https://github.com/llvm/llvm-project/issues/53949. Feel free to add some comment if something is missing, thanks!
| Assignee | ||
Updated•4 years ago
|
| Assignee | ||
Updated•4 years ago
|
Comment 23•4 years ago
|
||
(wrong link right?)
| Assignee | ||
Comment 24•4 years ago
|
||
Sure, sigh. Thank you.
Comment 25•4 years ago
|
||
Comment 26•4 years ago
|
||
| bugherder | ||
| Assignee | ||
Comment 27•4 years ago
|
||
Long time no activity there. We might want to copy-paste their rule and tweak it.
| Assignee | ||
Comment 28•4 years ago
|
||
Comment 29•4 years ago
|
||
Comment 30•4 years ago
|
||
| bugherder | ||
Updated•3 years ago
|
Comment 31•3 years ago
|
||
The leave-open keyword is there and there is no activity for 6 months.
:saschanaz, maybe it's time to close this bug?
For more information, please visit auto_nag documentation.
| Assignee | ||
Updated•3 years ago
|
| Assignee | ||
Comment 32•2 years ago
|
||
Removing NS_IMETHOD would also allow this, but per nika we can't do that before some assembly expert adjust stdcall specific parts. Bug 662348 has a patch but I don't think I can review that.
Description
•