{"push_id":616325019,"size":1000,"distinct_size":1570,"ref":"refs/heads/master","head":"3e7385aae9d58c8e12137d7c07aad48551048c13","before":"2b01a37ec38db9301239f0c0abcf3c695055b0ff","commits":[{"sha":"f0404c39f272868c1dedc7cda7b0b6dffcb5713d","author":{"email":"8de0203a6391036bc81ce266eefac1291b6bcb9a@pnkfx.org","name":"Felix S. Klock II"},"message":"`core::iter`: fix bug uncovered by arith-overflow.\n\n(The bug was in `impl RandomAccessIterator for Rev`; it may or may not\nhave been innocuous, depending on what guarantees one has about the\nbehavior of `idx` for the underlying iterator.)","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/f0404c39f272868c1dedc7cda7b0b6dffcb5713d"},{"sha":"faf3bcd72c85774805ae0e84d0458aa3e67b20e4","author":{"email":"8de0203a6391036bc81ce266eefac1291b6bcb9a@pnkfx.org","name":"Felix S. Klock II"},"message":"Accommodate simple cases of arith-overflow in `rustc` related crates.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/faf3bcd72c85774805ae0e84d0458aa3e67b20e4"},{"sha":"f1ea2b3094b1c28e64af30e187e31aa82f5ff004","author":{"email":"8de0203a6391036bc81ce266eefac1291b6bcb9a@pnkfx.org","name":"Felix S. Klock II"},"message":"Catch arith-overflow explicitly during `rustc::middle::const_eval`.\n\nThis only replaces the conditional arith-overflow asserts with\nunconditional errors from the guts of const-eval; it does *not*\nattempt to sanely handle such errors e.g. with a nice error message\nfrom `rustc`.  So the same test that led me to add this commit are\nstill failing, and must be addressed.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/f1ea2b3094b1c28e64af30e187e31aa82f5ff004"},{"sha":"f9bbef7f448ba843052eb88733c79aa36c35d5ab","author":{"email":"8de0203a6391036bc81ce266eefac1291b6bcb9a@pnkfx.org","name":"Felix S. Klock II"},"message":"Avoid fatal errors in astconv; just err and return `ty_err` instead.\n\nThis allows computation to proceed and find further errors.\n\n(However, this is also annoying at times when the subsequent errors\nare just reporting that a ty_err occurred. I have thoughts on ways to\nfix this that I will experiment with separately.)","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/f9bbef7f448ba843052eb88733c79aa36c35d5ab"},{"sha":"e919f82da1fb9fa0409f8febede311de4a8f1703","author":{"email":"8de0203a6391036bc81ce266eefac1291b6bcb9a@pnkfx.org","name":"Felix S. Klock II"},"message":"Address arith-overflow and error-handling in `const_eval.rs`.\n\n 1. Detect and report arithmetic overflow during const-expr eval.\n\n 2. Instead `eval_const_expr_partial` returning `Err(String)`, it now\n    has a dedicated enum of different cases. The main benefit of this\n    is the ability to pass along an interpretable payload, namely the\n    two inputs that caused an overlfow.\n\nI attempted to minimize fallout to error output in tests, but some was\nunavoidable. Those changes are in a follow-on commit.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/e919f82da1fb9fa0409f8febede311de4a8f1703"},{"sha":"5d950bd37d9f4ef46798b79d38d9d91927bb0cf4","author":{"email":"8de0203a6391036bc81ce266eefac1291b6bcb9a@pnkfx.org","name":"Felix S. Klock II"},"message":"Switch to `eval_const_expr_partial` when `check_match.rs` checks for `NaN`.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/5d950bd37d9f4ef46798b79d38d9d91927bb0cf4"},{"sha":"46de12ad0064e7879b1d8ce07e96e1e31274b881","author":{"email":"8de0203a6391036bc81ce266eefac1291b6bcb9a@pnkfx.org","name":"Felix S. Klock II"},"message":"Switch to eval_const_expr_partial in `trans::consts`.\n\nHowever, I left the ICEs rather than switching to nicer error\nreporting there; these cases *should* be detected prior to hitting\ntrans, and thus ICE'ing here is appropriate.\n\n(So why switch to `eval_const_expr_partial`? Because I want to try to\neliminate all uses of `eval_const_expr` entirely.)","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/46de12ad0064e7879b1d8ce07e96e1e31274b881"},{"sha":"8491c82c905d9b6d72742fd6dd0ec82c021bb800","author":{"email":"8de0203a6391036bc81ce266eefac1291b6bcb9a@pnkfx.org","name":"Felix S. Klock II"},"message":"Update tests for const-eval error handling changes.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/8491c82c905d9b6d72742fd6dd0ec82c021bb800"},{"sha":"b85b3c9b2b018e8dd8685db3217faa72ab82b965","author":{"email":"8de0203a6391036bc81ce266eefac1291b6bcb9a@pnkfx.org","name":"Felix S. Klock II"},"message":"Fix span typo in the arithmetic overflow for array length reporting.\n\nAdded pair of regression tests that I should have made when I thought\nof doing this in the first place.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/b85b3c9b2b018e8dd8685db3217faa72ab82b965"},{"sha":"11057fee08a6de23edbb8cb188336c104b4d25f9","author":{"email":"8de0203a6391036bc81ce266eefac1291b6bcb9a@pnkfx.org","name":"Felix S. Klock II"},"message":"Incorporated first review sugestion from eddyb.\n\nSuggestion was here:\n\n  https://github.com/rust-lang/rust/pull/22532#discussion_r25505609","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/11057fee08a6de23edbb8cb188336c104b4d25f9"},{"sha":"4e23179c85b3706e2ff78ecb0c014e42c56b096d","author":{"email":"8de0203a6391036bc81ce266eefac1291b6bcb9a@pnkfx.org","name":"Felix S. Klock II"},"message":"Incorporated second review suggestion from eddyb.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/4e23179c85b3706e2ff78ecb0c014e42c56b096d"},{"sha":"185c074798ce87429118868c292d2c2c7dc46cfc","author":{"email":"903817dace3a69d815606c577db89775e2c7670b@gmail.com","name":"Manish Goregaokar"},"message":"Fix backtrace tests for Linux","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/185c074798ce87429118868c292d2c2c7dc46cfc"},{"sha":"63a91c21d339738d2ed46e38fda7ca35b410935a","author":{"email":"903817dace3a69d815606c577db89775e2c7670b@gmail.com","name":"Manish Goregaokar"},"message":"Rollup merge of #22916 - rprichard:fmt-num-cleanup, r=alexcrichton\n\n  * Make num::UpperHex private.  I was unable to determine why this struct\n   is public.  The num module itself is not public, and the UpperHex struct\n   is not referenced anywhere in the core::fmt module.  (Only the UpperHex\n   trait is reference.)  num::LowerHex is not public.\n\n * Remove the suffix parameters from the macros that generate integral\n   display traits.\n\n   The code to print the Debug::fmt suffixes was removed when Show was\n   renamed to Debug.  It was an intentional change.  From RFC 0565:\n\n    * Focus on the *runtime* aspects of a type; repeating information such\n      as suffixes for integer literals is not generally useful since that\n      data is readily available from the type definition.\n\n * Because Show was renamed to Debug, rename show! to debug!.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/63a91c21d339738d2ed46e38fda7ca35b410935a"},{"sha":"3b30b74692cfee533b45e0380591d237975ec215","author":{"email":"903817dace3a69d815606c577db89775e2c7670b@gmail.com","name":"Manish Goregaokar"},"message":"Rollup merge of #22943 - ipetkov:lint-recursion, r=alexcrichton\n\n * The lint visitor's visit_ty method did not recurse, and had a\n  reference to the now closed #10894\n* The newly enabled recursion has only affected the `deprectated` lint\n  which now detects uses of deprecated items in trait impls and\n  function return types\n* Renamed some references to `CowString` and `CowVec` to `Cow<str>` and\n  `Cow<[T]>`, respectively, which appear outside of the crate which\n  defines them\n* Replaced a few instances of `InvariantType<T>` with\n  `PhantomData<Cell<T>>`\n* Disabled the `deprecated` lint in several places that\n  reference/implement traits on deprecated items which will get cleaned\n  up in the future\n* Unfortunately, this means that if a library declares\n  `#![deny(deprecated)]` and marks anything as deprecated, it will have\n  to disable the lint for any uses of said item, e.g. any impl the now\n  deprecated item\n\nFor any library that denies deprecated items but has deprecated items\nof its own, this is a [breaking-change]\n\nI had originally intended for the lint to ignore uses of deprecated items that are declared in the same crate, but this goes against some previous test cases that expect the lint to capture *all* uses of deprecated items, so I maintained the previous approach to avoid changing the expected behavior of the lint.\n\nTested locally on OS X, so hopefully there aren't any deprecated item uses behind a `cfg` that I may have missed.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/3b30b74692cfee533b45e0380591d237975ec215"},{"sha":"90686df18cddb600ddfca6fa209cb046d8c4293d","author":{"email":"903817dace3a69d815606c577db89775e2c7670b@gmail.com","name":"Manish Goregaokar"},"message":"Rollup merge of #22960 - huonw:static-assert, r=huonw\n\n The API this exposes is a little strange (being attached to `static`s),\nso it makes sense to conservatively feature gate it. If it is highly\npopular, it is possible to reverse this gating.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/90686df18cddb600ddfca6fa209cb046d8c4293d"},{"sha":"873d312d62a7ed426e125a601fe56b60fe087ca3","author":{"email":"903817dace3a69d815606c577db89775e2c7670b@gmail.com","name":"Manish Goregaokar"},"message":"Rollup merge of #22969 - dotdash:no_alloca_zeroed, r=huonw\n\n Its only user was lvalue_scratch_datum which is called with zero=true\nanymore, so it's effectively unused.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/873d312d62a7ed426e125a601fe56b60fe087ca3"},{"sha":"ea208a87a5d54d58ddf10302b8c3fad479afcae0","author":{"email":"903817dace3a69d815606c577db89775e2c7670b@gmail.com","name":"Manish Goregaokar"},"message":"Rollup merge of #22989 - laijs:fix_FromStr_bool_comment, r=alexcrichton\n\n Fix the return type in the comments.\n\nAn old commit 082bfde41217 (\\\"Fallout of std::str stabilization\\\") removed\nthe example of FromStr::from_str(), this commit adds it back. But\nthe example of StrExt::parse() is still kept with an additinal note.\n\nSigned-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/ea208a87a5d54d58ddf10302b8c3fad479afcae0"},{"sha":"d0fcb1f53c9f81fbcae5379dd1c0577a8605172c","author":{"email":"903817dace3a69d815606c577db89775e2c7670b@gmail.com","name":"Manish Goregaokar"},"message":"Rollup merge of #22990 - japaric:privATe, r=alexcrichton\n\n Associated types are now treated as part of the public API by the privacy checker.\n\nIf you were exposing a private type in your public API via an associated type, make that type public:\n\n``` diff\n  pub struct PublicType { .. }\n\n- struct Struct { .. }\n+ pub struct Struct { .. }\n\n  pub trait PublicTrait {\n      type Output;\n\n      fn foo(&self) -> Self::Output;\n  }\n\n  impl PublicTrait for PublicType {\n      type Output = Struct;\n\n      fn foo(&self) -> Struct {  // `Struct` is part of the public API, it must be marked as `pub`lic\n          ..\n      }\n  }\n```\n\n[breaking-change]\n\n---\n\nr? @nikomatsakis\ncloses #22912","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/d0fcb1f53c9f81fbcae5379dd1c0577a8605172c"},{"sha":"393ce1820e3f639b43d6058d2681b9757123ac1b","author":{"email":"903817dace3a69d815606c577db89775e2c7670b@gmail.com","name":"Manish Goregaokar"},"message":"Rollup merge of #22876 - Florob:const, r=nikomatsakis\n\n This changes the type of some public constants/statics in libunicode.\nNotably some `&'static &'static [(char, char)]` have changed\nto `&'static [(char, char)]`. The regexp crate seems to be the\nsole user of these, yet this is technically a [breaking-change]","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/393ce1820e3f639b43d6058d2681b9757123ac1b"},{"sha":"e9ca8acb0fbe0217e63f888da7ddc37e6a79b079","author":{"email":"903817dace3a69d815606c577db89775e2c7670b@gmail.com","name":"Manish Goregaokar"},"message":"Rollup merge of #22951 - huonw:weak-chuck-slice, r=alexcrichton\n\n `#[derive(Clone)]` unnecessarily requires the element type to also be\n`Clone`.","distinct":true,"url":"https://api.github.com/repos/fhartwig/rust/commits/e9ca8acb0fbe0217e63f888da7ddc37e6a79b079"}]}