{"push_id":3173706142,"size":3,"distinct_size":3,"ref":"refs/heads/master","head":"fe6a54d2207c9ab2c5eb5aa3c9488d92c7c86bfb","before":"9eac386342c601b14311b435f2b6d314fc817bb5","commits":[{"sha":"8b1c424b6d1cb001907e0fc0401e5242e297a83e","author":{"name":"Vadim Petrochenkov","email":"a2efa2b758ab72066c3f54752ab11d60ffc4331f@gmail.com"},"message":"privacy: Use common `DefId` visiting infra for all privacy visitors","distinct":true,"url":"https://api.github.com/repos/dforsyth/rust/commits/8b1c424b6d1cb001907e0fc0401e5242e297a83e"},{"sha":"60d1fa70bbb017632f43c206e5f16b0b5bbd0149","author":{"name":"Vadim Petrochenkov","email":"a2efa2b758ab72066c3f54752ab11d60ffc4331f@gmail.com"},"message":"Address review comments\n\nSay \"trait\" instead of \"type\" in diagnostics for `dyn Trait`","distinct":true,"url":"https://api.github.com/repos/dforsyth/rust/commits/60d1fa70bbb017632f43c206e5f16b0b5bbd0149"},{"sha":"fe6a54d2207c9ab2c5eb5aa3c9488d92c7c86bfb","author":{"name":"bors","email":"3a2c29237f73c7cf88424b80e427b1884f346b35@rust-lang.org"},"message":"Auto merge of #56878 - petrochenkov:privdyn, r=arielb1\n\nprivacy: Use common `DefId` visiting infrastructure for all privacy visitors\n\nOne repeating pattern in privacy checking is going through a type, visiting all `DefId`s inside it and doing something with them.\nThis is the case because visibilities and reachabilities are attached to `DefId`s.\n\nPreviously various privacy visitors visited types slightly differently using their own methods, with most recently written `TypePrivacyVisitor` being the \"gold standard\".\nThis mostly worked okay, but differences could manifest in overly conservative reachability analysis, some errors being reported twice, some private-in-public lints (not errors) being wrongly reported or not reported.\n\nThis PR does something that I wanted to do since https://github.com/rust-lang/rust/pull/32674#discussion_r58291608 - factoring out the common visiting logic!\nNow all the common logic is contained in `struct DefIdVisitorSkeleton`, with specific privacy visitors deciding only what to do with visited `DefId`s (via `trait DefIdVisitor`).\n\nA bunch of cleanups is also applied in the process.\nThis area is somewhat tricky due to lots of easily miss-able details, but thankfully it's was well covered by tests in https://github.com/rust-lang/rust/pull/46083 and previous PRs, so I'm relatively sure in the refactoring correctness.\n\nFixes https://github.com/rust-lang/rust/pull/56837#discussion_r241962239 in particular.\nAlso this will help with implementing https://github.com/rust-lang/rust/issues/48054.","distinct":true,"url":"https://api.github.com/repos/dforsyth/rust/commits/fe6a54d2207c9ab2c5eb5aa3c9488d92c7c86bfb"}]}
{"actor":{"display_login":"dforsyth"}}