{"action":"created","issue":{"url":"https://api.github.com/repos/ffi/ffi/issues/402","labels_url":"https://api.github.com/repos/ffi/ffi/issues/402/labels{/name}","comments_url":"https://api.github.com/repos/ffi/ffi/issues/402/comments","events_url":"https://api.github.com/repos/ffi/ffi/issues/402/events","html_url":"https://github.com/ffi/ffi/issues/402","id":54342419,"number":402,"title":"unable to resolve type 'uint64_t' on OSX","user":{"login":"robertgrimm","id":969670,"avatar_url":"https://avatars.githubusercontent.com/u/969670?v=3","gravatar_id":"","url":"https://api.github.com/users/robertgrimm","html_url":"https://github.com/robertgrimm","followers_url":"https://api.github.com/users/robertgrimm/followers","following_url":"https://api.github.com/users/robertgrimm/following{/other_user}","gists_url":"https://api.github.com/users/robertgrimm/gists{/gist_id}","starred_url":"https://api.github.com/users/robertgrimm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robertgrimm/subscriptions","organizations_url":"https://api.github.com/users/robertgrimm/orgs","repos_url":"https://api.github.com/users/robertgrimm/repos","events_url":"https://api.github.com/users/robertgrimm/events{/privacy}","received_events_url":"https://api.github.com/users/robertgrimm/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-01-14T16:26:31Z","updated_at":"2015-01-15T16:58:19Z","closed_at":"2015-01-15T16:58:19Z","body":"I'm using Ruby 2.1.2p96 on OSX Yosemite with FFI version 1.9.6.\r\n\r\nI have a simple file:\r\n\r\n```ruby\r\nrequire \"ffi\"                                                                                                                                                                                                                             \r\n                                                                                                                                                                                                                                      \r\nclass Foo < FFI::Struct                                                                                                                                                                                                                   \r\n  layout :bar, :uint64_t                                                                                                                                                                                                                  \r\nend\r\n```\r\n\r\nLoading this on my machine results in the following error:\r\n\r\n```\r\n/Users/robg/.rvm/gems/ruby-2.1.2@ds3_sdk/gems/ffi-1.9.6/lib/ffi/types.rb:70:in `find_type': unable to resolve type 'uint64_t' (TypeError)\r\n        from /Users/robg/.rvm/gems/ruby-2.1.2@ds3_sdk/gems/ffi-1.9.6/lib/ffi/struct.rb:327:in `find_type'\r\n        from /Users/robg/.rvm/gems/ruby-2.1.2@ds3_sdk/gems/ffi-1.9.6/lib/ffi/struct.rb:320:in `find_field_type'\r\n        from /Users/robg/.rvm/gems/ruby-2.1.2@ds3_sdk/gems/ffi-1.9.6/lib/ffi/struct.rb:362:in `array_layout'\r\n        from /Users/robg/.rvm/gems/ruby-2.1.2@ds3_sdk/gems/ffi-1.9.6/lib/ffi/struct.rb:272:in `layout'\r\n        from /Users/robg/foo/foo.rb:4:in `<class:Foo>'\r\n        from /Users/robg/foo/foo.rb:3:in `<top (required)>'\r\n        from /Users/robg/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'\r\n        from /Users/robg/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'\r\n        from /Users/robg/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/irb/init.rb:286:in `block in load_modules'\r\n        from /Users/robg/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/irb/init.rb:284:in `each'\r\n        from /Users/robg/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/irb/init.rb:284:in `load_modules'\r\n        from /Users/robg/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/irb/init.rb:20:in `setup'\r\n        from /Users/robg/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/irb.rb:380:in `start'\r\n        from /Users/robg/.rvm/rubies/ruby-2.1.2/bin/irb:11:in `<main>'\r\n```\r\n\r\nOn FreeBSD, for example, this code works.  If I change \"uint64_t\" to \"__uint64_t\" on OSX it also works.\r\n\r\nWhat is the difference between the __ types and non-__ types?  I notice that some non-__ types are missing from some lib/ffi/platform/*/types.conf files (i.e. uint64_t is missing from x86_64-darmin/types.conf).  Should the non-__ types be added?"},"comment":{"url":"https://api.github.com/repos/ffi/ffi/issues/comments/70118951","html_url":"https://github.com/ffi/ffi/issues/402#issuecomment-70118951","issue_url":"https://api.github.com/repos/ffi/ffi/issues/402","id":70118951,"user":{"login":"tduehr","id":37545,"avatar_url":"https://avatars.githubusercontent.com/u/37545?v=3","gravatar_id":"","url":"https://api.github.com/users/tduehr","html_url":"https://github.com/tduehr","followers_url":"https://api.github.com/users/tduehr/followers","following_url":"https://api.github.com/users/tduehr/following{/other_user}","gists_url":"https://api.github.com/users/tduehr/gists{/gist_id}","starred_url":"https://api.github.com/users/tduehr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tduehr/subscriptions","organizations_url":"https://api.github.com/users/tduehr/orgs","repos_url":"https://api.github.com/users/tduehr/repos","events_url":"https://api.github.com/users/tduehr/events{/privacy}","received_events_url":"https://api.github.com/users/tduehr/received_events","type":"User","site_admin":false},"created_at":"2015-01-15T16:58:19Z","updated_at":"2015-01-15T16:58:19Z","body":"Just put the number in a comment like this: #403 \r\nMerged"}}