On 03/11/2020 09:37, Miklos Vajna wrote:
(If you see a case where a pointer is returned and it can't be ever nullptr, then we should fix the return type to a be reference. Caolan did lots of fixes like that recently.)
That's up for debate. For example, if a sufficiently large fraction of call sites wants a pointer, it can be awkward to change a function's return type from pointer to reference. (And doing so without carefully auditing all call sites can silently introduce regressions.)
T& is something rather different than T* plus "cannot be null". Just as the C++ type system isn't capable of expressing the type "int, but never 42", it isn't capable of expressing the type "T*, but never nullptr".
_______________________________________________ LibreOffice mailing list LibreOffice@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/libreoffice