{"action":"created","issue":{"url":"https://api.github.com/repos/ericniebler/range-v3/issues/121","repository_url":"https://api.github.com/repos/ericniebler/range-v3","labels_url":"https://api.github.com/repos/ericniebler/range-v3/issues/121/labels{/name}","comments_url":"https://api.github.com/repos/ericniebler/range-v3/issues/121/comments","events_url":"https://api.github.com/repos/ericniebler/range-v3/issues/121/events","html_url":"https://github.com/ericniebler/range-v3/issues/121","id":64291074,"number":121,"title":"Allow ints() to take two Integrals of different types","user":{"login":"gnzlbg","id":904614,"avatar_url":"https://avatars.githubusercontent.com/u/904614?v=3","gravatar_id":"","url":"https://api.github.com/users/gnzlbg","html_url":"https://github.com/gnzlbg","followers_url":"https://api.github.com/users/gnzlbg/followers","following_url":"https://api.github.com/users/gnzlbg/following{/other_user}","gists_url":"https://api.github.com/users/gnzlbg/gists{/gist_id}","starred_url":"https://api.github.com/users/gnzlbg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gnzlbg/subscriptions","organizations_url":"https://api.github.com/users/gnzlbg/orgs","repos_url":"https://api.github.com/users/gnzlbg/repos","events_url":"https://api.github.com/users/gnzlbg/events{/privacy}","received_events_url":"https://api.github.com/users/gnzlbg/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ericniebler/range-v3/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-03-25T14:58:32Z","updated_at":"2016-04-27T15:21:55Z","closed_at":null,"body":"Allow `ints()` to take two `Integral`s of different types by adding the following member function to `ints_fn`:\r\n\r\n```c++\r\n  template <class From, class To,\r\n            class CT = meta::eval<std::common_type<From, To>>,\r\n            CONCEPT_REQUIRES_(Integral<From>() && Integral<To>()\r\n                              && Integral<CT>() && !std::is_same<From, To>{})>\r\n  take_view<iota_view<CT>> operator()(From from, To to) const {\r\n    return (*this).template operator()<CT>(from, to); // maybe move?\r\n  }\r\n```\r\n\r\nThe user can right now explicitly do `view::ints<std::size_t>(0, size)`, but this option remains available and `ints` is an utility view anyways. This makes it automatically for the user."},"comment":{"url":"https://api.github.com/repos/ericniebler/range-v3/issues/comments/215118861","html_url":"https://github.com/ericniebler/range-v3/issues/121#issuecomment-215118861","issue_url":"https://api.github.com/repos/ericniebler/range-v3/issues/121","id":215118861,"user":{"login":"gnzlbg","id":904614,"avatar_url":"https://avatars.githubusercontent.com/u/904614?v=3","gravatar_id":"","url":"https://api.github.com/users/gnzlbg","html_url":"https://github.com/gnzlbg","followers_url":"https://api.github.com/users/gnzlbg/followers","following_url":"https://api.github.com/users/gnzlbg/following{/other_user}","gists_url":"https://api.github.com/users/gnzlbg/gists{/gist_id}","starred_url":"https://api.github.com/users/gnzlbg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gnzlbg/subscriptions","organizations_url":"https://api.github.com/users/gnzlbg/orgs","repos_url":"https://api.github.com/users/gnzlbg/repos","events_url":"https://api.github.com/users/gnzlbg/events{/privacy}","received_events_url":"https://api.github.com/users/gnzlbg/received_events","type":"User","site_admin":false},"created_at":"2016-04-27T15:21:55Z","updated_at":"2016-04-27T15:21:55Z","body":"> This encourages signed/unsigned mismatch errors.\r\n\r\nI've come over time to agree on this and think this would be a mistake. Can we close this?"}}