{"action":"opened","issue":{"url":"https://api.github.com/repos/Microsoft/GSL/issues/417","repository_url":"https://api.github.com/repos/Microsoft/GSL","labels_url":"https://api.github.com/repos/Microsoft/GSL/issues/417/labels{/name}","comments_url":"https://api.github.com/repos/Microsoft/GSL/issues/417/comments","events_url":"https://api.github.com/repos/Microsoft/GSL/issues/417/events","html_url":"https://github.com/Microsoft/GSL/issues/417","id":187921477,"number":417,"title":"Is `not_null` for use with pointers to arrays or not?","user":{"login":"hpesoj","id":2169928,"avatar_url":"https://avatars.githubusercontent.com/u/2169928?v=3","gravatar_id":"","url":"https://api.github.com/users/hpesoj","html_url":"https://github.com/hpesoj","followers_url":"https://api.github.com/users/hpesoj/followers","following_url":"https://api.github.com/users/hpesoj/following{/other_user}","gists_url":"https://api.github.com/users/hpesoj/gists{/gist_id}","starred_url":"https://api.github.com/users/hpesoj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hpesoj/subscriptions","organizations_url":"https://api.github.com/users/hpesoj/orgs","repos_url":"https://api.github.com/users/hpesoj/repos","events_url":"https://api.github.com/users/hpesoj/events{/privacy}","received_events_url":"https://api.github.com/users/hpesoj/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-11-08T07:35:04Z","updated_at":"2016-11-08T07:35:04Z","closed_at":null,"body":"Sections [I.12](https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#i12-declare-a-pointer-that-must-not-be-null-as-not_null) and [F.25](https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#f25-use-a-zstring-or-a-not_nullzstring-to-designate-a-c-style-string) of the C++ Core Guidelines suggest that `not_null` is designed to be used with C-style strings (indeed, the `length` function used as an example would presumably need to increment the pointer somehow), but the [current implementation](https://github.com/Microsoft/GSL/blob/master/gsl/gsl) suggests `not_null` is to be used only with pointers that reference a stand-alone object and explicitly `delete`s a number of pointer arithmetic operations. This is an apparent contradiction that needs resolving."}}
{"actor":{"display_login":"hpesoj"}}