Overloaded virtual functions

RESOLVED FIXED in Firefox 58

Status

()

P3
normal
RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: tjr, Assigned: tjr)

Tracking

(Blocks: 1 bug)

unspecified
mozilla58
Points:
---

Firefox Tracking Flags

(firefox57 wontfix, firefox58 fixed)

Details

(Whiteboard: [tor][gfx-noted])

Attachments

(1 attachment)

(Assignee)

Description

2 years ago
gfx/ generates many of these warnings, which are worrying, so I'm opening this to track them.
(Assignee)

Updated

2 years ago
No longer blocks: 1330608
(Assignee)

Updated

2 years ago
Blocks: 1394433
(Assignee)

Comment 2

2 years ago
> warning: gfx/2d/FilterNodeD2D1.h:33:16 [-Woverloaded-virtual] 'virtual void mozilla::gfx::FilterNodeD2D1::SetInput(uint32_t, mozilla::gfx::SourceSurface*)' was hidden
> warning: gfx/2d/FilterNodeD2D1.h:37:16 [-Woverloaded-virtual] 'virtual void mozilla::gfx::FilterNodeD2D1::SetAttribute(uint32_t, mozilla::gfx::Float)' was hidden
> warning: gfx/2d/FilterNodeD2D1.h:38:16 [-Woverloaded-virtual] 'virtual void mozilla::gfx::FilterNodeD2D1::SetAttribute(uint32_t, const Point&)' was hidden
> warning: gfx/2d/FilterNodeD2D1.h:39:16 [-Woverloaded-virtual] 'virtual void mozilla::gfx::FilterNodeD2D1::SetAttribute(uint32_t, const mozilla::gfx::Matrix5x4&)' was hidden
> warning: gfx/2d/FilterNodeD2D1.h:40:16 [-Woverloaded-virtual] 'virtual void mozilla::gfx::FilterNodeD2D1::SetAttribute(uint32_t, const Point3D&)' was hidden
> warning: gfx/2d/FilterNodeD2D1.h:41:16 [-Woverloaded-virtual] 'virtual void mozilla::gfx::FilterNodeD2D1::SetAttribute(uint32_t, const Size&)' was hidden
> warning: gfx/2d/FilterNodeD2D1.h:43:16 [-Woverloaded-virtual] 'virtual void mozilla::gfx::FilterNodeD2D1::SetAttribute(uint32_t, const mozilla::gfx::Color&)' was hidden
> warning: gfx/2d/FilterNodeD2D1.h:44:16 [-Woverloaded-virtual] 'virtual void mozilla::gfx::FilterNodeD2D1::SetAttribute(uint32_t, const Rect&)' was hidden
> warning: gfx/2d/FilterNodeD2D1.h:46:16 [-Woverloaded-virtual] 'virtual void mozilla::gfx::FilterNodeD2D1::SetAttribute(uint32_t, bool)' was hidden
> warning: gfx/2d/FilterNodeD2D1.h:47:16 [-Woverloaded-virtual] 'virtual void mozilla::gfx::FilterNodeD2D1::SetAttribute(uint32_t, const Float*, uint32_t)' was hidden
> warning: gfx/2d/FilterNodeD2D1.h:49:16 [-Woverloaded-virtual] 'virtual void mozilla::gfx::FilterNodeD2D1::SetAttribute(uint32_t, const Matrix&)' was hidden
> warning: gfx/2d/FilterNodeD2D1.h:80:16 [-Woverloaded-virtual]   by 'virtual void mozilla::gfx::FilterNodeConvolveD2D1::SetInput(uint32_t, mozilla::gfx::FilterNode*)'
> warning: gfx/2d/FilterNodeD2D1.h:85:16 [-Woverloaded-virtual]   by 'mozilla::gfx::FilterNodeConvolveD2D1::SetAttribute'


> warning: dom/plugins/ipc/PluginUtilsWin.cpp:134:14 [-Wdelete-non-virtual-dtor] deleting object of polymorphic class type 'mozilla::plugins::PluginUtilsWin::AudioNotification' which has non-virtual destructor might cause undefined behaviour
> warning: gfx/2d/NativeFontResourceDWrite.cpp:120:14 [-Wdelete-non-virtual-dtor] deleting object of polymorphic class type 'mozilla::gfx::DWriteFontFileStream' which has non-virtual destructor might cause undefined behaviour
> warning: gfx/layers/d3d11/TextureD3D11.cpp:68:14 [-Wdelete-non-virtual-dtor] deleting object of polymorphic class type 'mozilla::layers::TextureMemoryMeasurer' which has non-virtual destructor might cause undefined behaviour
> warning: obj-firefox/dist/include/mozilla/UniquePtr.h:528:5 [-Wdelete-non-virtual-dtor] deleting object of polymorphic class type 'mozilla::widget::PDFViaEMFPrintHelper' which has non-virtual destructor might cause undefined behaviour
> warning: widget/windows/InkCollector.h:26:14 [-Wdelete-non-virtual-dtor] deleting object of polymorphic class type 'InkCollectorEvent' which has non-virtual destructor might cause undefined behaviour
> warning: widget/windows/JumpListBuilder.cpp:100:300 [-Wdelete-non-virtual-dtor] deleting object of polymorphic class type 'mozilla::widget::detail::DoneCommitListBuildCallback' which has non-virtual destructor might cause undefined behaviour
> warning: widget/windows/nsDataObj.cpp:489:286 [-Wdelete-non-virtual-dtor] deleting object of polymorphic class type '{anonymous}::RemoveTempFileHelper' which has non-virtual destructor might cause undefined behaviour
Whiteboard: [tor] → [tor][gfx-noted]
status-firefox57: --- → wontfix
(Assignee)

Comment 3

2 years ago
Changing this bug to focus just on overloaded-virtual
Summary: Overloaded virtual functions and delete-non-virtual-dtor warnings in gfx/ → Overloaded virtual functions
Comment hidden (mozreview-request)
(Assignee)

Comment 5

2 years ago
Try run with all the '[-Woverloaded-virtual]' warnings: https://treeherder.mozilla.org/#/jobs?repo=try&revision=5cf168528a59ba7adcfcb760ac326cc76f58894a&selectedJob=133906172

Try run silencing all of these except in ICU and pdfium: https://treeherder.mozilla.org/#/jobs?repo=try&revision=8e39b917a84fea4b5e1acf780f9c3dda5e1d0ed3&selectedJob=134092815

If good, before landing I will get a clean try tun on a vanilla build, just haven't submitted it yet.
(Assignee)

Updated

2 years ago
Attachment #8901344 - Flags: review?(nfroyd)

Comment 7

2 years ago
mozreview-review
Comment on attachment 8901344 [details]
Bug 1394005 Fix overloaded-virtual warnings in FilterNodeD2D1

https://reviewboard.mozilla.org/r/172806/#review190724

It feels like this is kinda subtle, but I guess that's C++ for you...
Attachment #8901344 - Flags: review?(nfroyd) → review+
(Assignee)

Updated

2 years ago
Keywords: checkin-needed
Assignee: nobody → tom

Comment 8

2 years ago
Pushed by ryanvm@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/3d80498e2f75
Fix overloaded-virtual warnings in FilterNodeD2D1 r=froydnj
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/3d80498e2f75
Status: NEW → RESOLVED
Last Resolved: 2 years ago
status-firefox58: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla58
You need to log in before you can comment on or make changes to this bug.