On Thu, Apr 21, 2016 at 02:10:59PM +1000, Nicholas Nethercote wrote:
On Thu, Apr 21, 2016 at 1:23 PM, Kris Maglione <kmagli...@mozilla.com> wrote:

If we do this, can we please use |nsresult*| rather than |nsresult&|?

I prefer a reference because of the guarantee of non-nullness. But I
could live with a pointer if people think it's better.

There isn't a strict guarantee of non-nullness for reference parameters. This is an extreme example, but technically valid:

 T th(*(nsresult*)0);

Or, somewhat more likely, a function which already takes a |nsresult*| argument might do:

 T th(*aRv);

I suppose either of those are less likely than someone passing |nullptr|, but if we really want to guarantee non-nullness, we can do that easily enough with a template type like GSL's |non_null|.
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to