{"action":"opened","issue":{"url":"https://api.github.com/repos/RobotLocomotion/drake/issues/2514","repository_url":"https://api.github.com/repos/RobotLocomotion/drake","labels_url":"https://api.github.com/repos/RobotLocomotion/drake/issues/2514/labels{/name}","comments_url":"https://api.github.com/repos/RobotLocomotion/drake/issues/2514/comments","events_url":"https://api.github.com/repos/RobotLocomotion/drake/issues/2514/events","html_url":"https://github.com/RobotLocomotion/drake/issues/2514","id":159014863,"number":2514,"title":"Clarify \"Integer types\" rule from cppguide","user":{"login":"jwnimmer-tri","id":17596505,"avatar_url":"https://avatars.githubusercontent.com/u/17596505?v=3","gravatar_id":"","url":"https://api.github.com/users/jwnimmer-tri","html_url":"https://github.com/jwnimmer-tri","followers_url":"https://api.github.com/users/jwnimmer-tri/followers","following_url":"https://api.github.com/users/jwnimmer-tri/following{/other_user}","gists_url":"https://api.github.com/users/jwnimmer-tri/gists{/gist_id}","starred_url":"https://api.github.com/users/jwnimmer-tri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jwnimmer-tri/subscriptions","organizations_url":"https://api.github.com/users/jwnimmer-tri/orgs","repos_url":"https://api.github.com/users/jwnimmer-tri/repos","events_url":"https://api.github.com/users/jwnimmer-tri/events{/privacy}","received_events_url":"https://api.github.com/users/jwnimmer-tri/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/RobotLocomotion/drake/labels/priority:%20low","name":"priority: low","color":"e99695"},{"url":"https://api.github.com/repos/RobotLocomotion/drake/labels/team:%20software%20core","name":"team: software core","color":"0052cc"},{"url":"https://api.github.com/repos/RobotLocomotion/drake/labels/type:%20documentation","name":"type: documentation","color":"009800"},{"url":"https://api.github.com/repos/RobotLocomotion/drake/labels/type:%20style","name":"type: style","color":"009800"}],"state":"open","locked":false,"assignee":{"login":"jwnimmer-tri","id":17596505,"avatar_url":"https://avatars.githubusercontent.com/u/17596505?v=3","gravatar_id":"","url":"https://api.github.com/users/jwnimmer-tri","html_url":"https://github.com/jwnimmer-tri","followers_url":"https://api.github.com/users/jwnimmer-tri/followers","following_url":"https://api.github.com/users/jwnimmer-tri/following{/other_user}","gists_url":"https://api.github.com/users/jwnimmer-tri/gists{/gist_id}","starred_url":"https://api.github.com/users/jwnimmer-tri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jwnimmer-tri/subscriptions","organizations_url":"https://api.github.com/users/jwnimmer-tri/orgs","repos_url":"https://api.github.com/users/jwnimmer-tri/repos","events_url":"https://api.github.com/users/jwnimmer-tri/events{/privacy}","received_events_url":"https://api.github.com/users/jwnimmer-tri/received_events","type":"User","site_admin":false},"milestone":null,"comments":0,"created_at":"2016-06-07T20:19:00Z","updated_at":"2016-06-07T20:19:00Z","closed_at":null,"body":"https://google.github.io/styleguide/cppguide.html#Integer_Types\r\n\r\nWe should clarify the \"Integer types\" rule from cppguide.  It's not clear when (other than bitfields) unsigned types can be used.\r\n\r\nThe rule that david-german-tri and I seem to agree on is that unsigned integers may only be used:\r\n- for bitfields\r\n- when a (1) non-Drake API uses unsigned types, and (2) casting to a signed type during Drake's interactions with the non-Drake API would obscure the readability of our code, and (3) subtraction underflow is obviously not at risk. \r\n\r\nUnder those three conditions, `size_t` (and not any other unsigned type) may be used by Drake."}}
{"actor":{"display_login":"jwnimmer-tri"}}