# Rust 2018: an early preview

**URL:** <https://internals.rust-lang.org/t/rust-2018-an-early-preview/7776>\
**Category:** announcements\
**Created:** [June 22, 2018, 10:19pm UTC](https://internals.rust-lang.org/t/rust-2018-an-early-preview/7776 "2018-06-22T22:19:19Z")\
**Posts on this page:** 1\
**Showing post:** 58

<div class="post-metadata">

**Author:** ![petrochenkov](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/petrochenkov/32/2784_2.png) [@petrochenkov](https://internals.rust-lang.org/u/petrochenkov)\
**Post date:** [June 29, 2018, 9:24am UTC](https://internals.rust-lang.org/t/rust-2018-an-early-preview/7776/58 "2018-06-29T09:24:29Z")

</div>

> [@vorner](#):
>
> Any reason why `super` is not a separate visibility modifier as well?

+ to the question.

Quick search in the rust repo (without tests and docs) - `pub(crate)` - 118 results, `pub(super)` - 170 results.

I've gathered some statistics about distribution of "sufficient visibilities" in the original RFC - [pub(restricted) item by pnkfelix · Pull Request #1422 · rust-lang/rfcs · GitHub](https://github.com/rust-lang/rfcs/pull/1422#issuecomment-174656923) and `pub(super)` was more common too.

(I addition, `pub(crate)` in the root module is useless and can be removed, but `pub(super)` in root module is invalid, so use of `pub(super)` by default even in cases when `super` is equivalent to `crate` prevents this little mistake.)

---

_[View the full topic](https://internals.rust-lang.org/t/rust-2018-an-early-preview/7776)._
