On 04/11/2020 11:35, Mike Kaganski wrote:
On 04.11.2020 12:51, Stephan Bergmann wrote:
On 04/11/2020 08:26, Miklos Vajna wrote:
If a never-nullptr pointer is returned, it would be really useful to
somehow state that in the function's signature. Are you aware of any way
to do that? There is C's __attribute__((nonnull)), but it only works on
function parameters, I think.
see "not_null" at
<https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines>
The note in F.60 that reads:
Note If you prefer the pointer notation (-> and/or * vs. .),
not_null<T*> provides the same guarantee as T&.
looks to me as if T& still *does* mean "pointer, but not null, with a
special syntax".
...the same guarantee that "no argument" is not a valid option, is
presumably what that note wants to express in the context of "F.60:
Prefer T* over T& when 'no argument' is a valid option".
That a reference is something completely different than a pointer shows
e.g. in the rule that if a class has an implicit copy constructor and a
non-static data member of reference type, then the copy constructor is
defined as deleted (while there is no such rule if the data member is of
pointer type).
_______________________________________________
LibreOffice mailing list
LibreOffice@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/libreoffice