Closed
Bug 919825
Opened 12 years ago
Closed 12 years ago
In member function 'virtual nsrefcnt nsSecurityConsoleMessage::Release()': warning: deleting object of polymorphic class type 'nsSecurityConsoleMessage' which has non-virtual destructor might cause undefined behaviour [-Wdelete-non-virtual-dtor]
Categories
(Core :: XPCOM, defect)
Tracking
()
RESOLVED
FIXED
mozilla27
People
(Reporter: dholbert, Assigned: dholbert)
References
(Blocks 1 open bug)
Details
Just noticed this build warning:
{
3:19.54 In file included from ../../dist/include/nsISupportsUtils.h:26:0,
3:19.54 from ../../dist/include/nsISupports.h:123,
3:19.54 from ../../dist/include/nsISecurityConsoleMessage.h:10,
3:19.54 from /scratch/work/builds/mozilla-inbound/mozilla/xpcom/base/nsSecurityConsoleMessage.h:7,
3:19.54 from /scratch/work/builds/mozilla-inbound/mozilla/xpcom/base/nsSecurityConsoleMessage.cpp:5:
3:19.55 /scratch/work/builds/mozilla-inbound/mozilla/xpcom/base/nsSecurityConsoleMessage.cpp: In member function 'virtual nsrefcnt nsSecurityConsoleMessage::Release()':
3:19.55 Warning: -Wdelete-non-virtual-dtor in /scratch/work/builds/mozilla-inbound/obj/dist/include/nsISupportsImpl.h: deleting object of polymorphic class type 'nsSecurityConsoleMessage' which has non-virtual destructor might cause undefined behaviour
3:19.55 ../../dist/include/nsISupportsImpl.h:494:52: warning: deleting object of polymorphic class type 'nsSecurityConsoleMessage' which has non-virtual destructor might cause undefined behaviour [-Wdelete-non-virtual-dtor]
3:19.55 NS_IMPL_RELEASE_WITH_DESTROY(_class, delete (this))
3:19.55 ^
3:19.55 ../../dist/include/nsISupportsImpl.h:474:5: note: in definition of macro 'NS_IMPL_RELEASE_WITH_DESTROY'
3:19.55 _destroy; \
3:19.55 ^
3:19.55 ../../dist/include/nsISupportsImpl.h:1220:3: note: in expansion of macro 'NS_IMPL_RELEASE'
3:19.55 NS_IMPL_RELEASE(_class) \
3:19.55 ^
3:19.55 /scratch/work/builds/mozilla-inbound/mozilla/xpcom/base/nsSecurityConsoleMessage.cpp:7:1: note: in expansion of macro 'NS_IMPL_ISUPPORTS1'
3:19.55 NS_IMPL_ISUPPORTS1(nsSecurityConsoleMessage, nsISecurityConsoleMessage)
3:19.55 ^
}
This just needs a MOZ_FINAL annotation on the class.
Planning on fixing this with my blanket rs=ehsan, granted over in bug 829975 comment 3.
[marking dependency on bug 846918, since this code was added there, though I'm not sure why I only noticed the warning for the first time today.]
| Assignee | ||
Comment 1•12 years ago
|
||
Flags: in-testsuite-
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla27
You need to log in
before you can comment on or make changes to this bug.
Description
•