Closed Bug 1835119 Opened 1 year ago Closed 1 year ago

Remove NSCAP_FEATURE_USE_BASE

Categories

(Core :: XPCOM, task)

task

Tracking

()

RESOLVED FIXED
115 Branch
Tracking Status
firefox115 --- fixed

People

(Reporter: emilio, Assigned: emilio)

References

Details

Attachments

(2 files)

This is a first step towards simplifying nsCOMPtr and maybe eventually even unifying with RefPtr.

This is not needed since bug 1363754. I left this as a follow-up
clean-up to mitigate a bit the risk of that change.

It's not clear to me why specializing nsCOMPtr<nsISupports> is
particularly useful, and this removes a lot of code, bringing us closer
to unifying nsCOMPtr and RefPtr.

The changes in other places are needed because we used to allow
nsCOMPtr<nsISupports> to implicitly coerce to nsISupports even for
rvalue references.

 0:47.88 /home/emilio/src/moz/gecko-4/netwerk/protocol/http/nsHttpActivityDistributor.cpp:121:11: error: conversion function from 'nsCOMPtr<nsISupports>' to 'nsISupports *' invokes a deleted function
 0:47.88           nsCOMPtr<nsISupports>(do_QueryObject(channel)), aActivityType,
 0:47.88           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 0:47.88 /home/emilio/src/moz/gecko-4/obj-debug/dist/include/nsCOMPtr.h:764:3: note: 'operator nsISupports *' has been explicitly marked deleted here
 0:47.88   operator T*() const&& = delete;
 0:47.88   ^
 0:47.88 /home/emilio/src/moz/gecko-4/netwerk/protocol/http/nsHttpActivityDistributor.cpp:29:57: note: passing argument to parameter 'aHttpChannel' here
 0:47.88 nsHttpActivityDistributor::ObserveActivity(nsISupports* aHttpChannel,
 0:47.88                                                         ^

Which is not allowed for a good reason, generally.

Depends on D179123

Pushed by ealvarez@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/3e57422d355f
Remove NSCAP_FEATURE_USE_BASE. r=xpcom-reviewers,kmag
Pushed by ealvarez@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/55a655fc5507
Remove nsCOMPtr_base. r=xpcom-reviewers,kmag
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 115 Branch
Pushed by martin@humanoids.be:
https://hg.mozilla.org/comm-central/rev/264eb072ba8f
Thunderbird: directly assign nsISupports* to nsCOMPtr<nsISupports>. rs=bustage-fix
See Also: → 1836301
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: