{"action":"created","issue":{"url":"https://api.github.com/repos/robertwb/issues-import-test/issues/82","repository_url":"https://api.github.com/repos/robertwb/issues-import-test","labels_url":"https://api.github.com/repos/robertwb/issues-import-test/issues/82/labels{/name}","comments_url":"https://api.github.com/repos/robertwb/issues-import-test/issues/82/comments","events_url":"https://api.github.com/repos/robertwb/issues-import-test/issues/82/events","html_url":"https://github.com/robertwb/issues-import-test/issues/82","id":168202783,"number":82,"title":"Potential problems for extern cdefs in argument parsing","user":{"login":"robertwb","id":486017,"avatar_url":"https://avatars.githubusercontent.com/u/486017?v=3","gravatar_id":"","url":"https://api.github.com/users/robertwb","html_url":"https://github.com/robertwb","followers_url":"https://api.github.com/users/robertwb/followers","following_url":"https://api.github.com/users/robertwb/following{/other_user}","gists_url":"https://api.github.com/users/robertwb/gists{/gist_id}","starred_url":"https://api.github.com/users/robertwb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robertwb/subscriptions","organizations_url":"https://api.github.com/users/robertwb/orgs","repos_url":"https://api.github.com/users/robertwb/repos","events_url":"https://api.github.com/users/robertwb/events{/privacy}","received_events_url":"https://api.github.com/users/robertwb/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/robertwb/issues-import-test/labels/bug","name":"bug","color":"ee0701"},{"url":"https://api.github.com/repos/robertwb/issues-import-test/labels/C:%20Code%20Generation","name":"C: Code Generation","color":"0000aa"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2016-07-28T21:36:27Z","updated_at":"2016-07-28T21:36:30Z","closed_at":null,"body":"**Reported by robertwb on 23 Jul 2008 07:57 UTC**\n```\r\nConsider this code:\r\n\r\ncdef extern from \"t.h\":\r\n     ctypedef long hullo\r\n\r\ndef foo(hullo h): pass\r\n\r\nI noticed that it creates code like this:\r\nPyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, \"l\", __pyx_argnames, \r\n&__pyx_v_h))\r\n\r\nWhich could probably destroy the stack if we don't have the exact \r\ntypedef, right? Which means: One should either write our own parsing \r\ncode instead (generate for each parameter signature), or generate the \r\ntypestring at runtime, or insert C checks for the sizeof(the typedefs). \r\nThe latter will destroy the current approach for numpy.int64 and friends \r\nand remove what I consider a nice feature.\r\n\r\nJust as I took all that care to allow approximate typedefs for buffers :-)\r\n\r\nJust noting it down, I suppose for now we'll live with it. But need to \r\nbe more careful about recommending approximate typedefs.\r\n\r\n-- \r\nDag Sverre\r\n```\r\n\r\nSee thread at http://codespeak.net/pipermail/cython-dev/2008-July/001760.html\n\nMigrated-From: http://trac.cython.org/ticket/28"},"comment":{"url":"https://api.github.com/repos/robertwb/issues-import-test/issues/comments/236032667","html_url":"https://github.com/robertwb/issues-import-test/issues/82#issuecomment-236032667","issue_url":"https://api.github.com/repos/robertwb/issues-import-test/issues/82","id":236032667,"user":{"login":"robertwb","id":486017,"avatar_url":"https://avatars.githubusercontent.com/u/486017?v=3","gravatar_id":"","url":"https://api.github.com/users/robertwb","html_url":"https://github.com/robertwb","followers_url":"https://api.github.com/users/robertwb/followers","following_url":"https://api.github.com/users/robertwb/following{/other_user}","gists_url":"https://api.github.com/users/robertwb/gists{/gist_id}","starred_url":"https://api.github.com/users/robertwb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robertwb/subscriptions","organizations_url":"https://api.github.com/users/robertwb/orgs","repos_url":"https://api.github.com/users/robertwb/repos","events_url":"https://api.github.com/users/robertwb/events{/privacy}","received_events_url":"https://api.github.com/users/robertwb/received_events","type":"User","site_admin":false},"created_at":"2016-07-28T21:36:30Z","updated_at":"2016-07-28T21:36:30Z","body":"**Comment by robertwb on 19 Aug 2008 04:17 UTC**\nLets try to come up with some specific examples here..."}}
{"actor":{"display_login":"robertwb"}}