A guide to how rustc works and how to contribute to it.
Go to file
ednix 8a96fc0003 Fix formatting, follow 100 char line length limit
No idea why the Markdown stuff got dropped last time. Hopefully everything is fine now.
2018-12-23 22:49:56 -06:00
ci make the line-length script respect 100 char limit XD (#240) 2018-11-26 11:13:21 -06:00
src Fix formatting, follow 100 char line length limit 2018-12-23 22:49:56 -06:00
.editorconfig Added EditorConfig file for `src`. 2018-03-26 20:28:00 -05:00
.gitattributes Fix failing tidy (line endings on Windows) (#246) 2018-12-01 15:10:43 -06:00
.gitignore add outline and chapters 2018-01-16 17:35:19 -05:00
.travis.yml bump max line length to 100 2018-09-11 16:31:47 -04:00
CODE_OF_CONDUCT.md Changed all instances of `e.g.,` to `e.g.`, and similar. 2018-02-04 21:46:26 -06:00
LICENSE-APACHE add code-of-conduct, licensing material, and a README 2018-01-16 16:36:21 -05:00
LICENSE-MIT add code-of-conduct, licensing material, and a README 2018-01-16 16:36:21 -05:00
README.md fixed typo issues link 2018-12-05 16:54:58 -06:00
book.toml Fix all the links! 2018-09-21 15:54:25 -05:00

README.md

This is a collaborate effort to build a guide that explains how rustc works. The aim of the guide is to help new contributors get oriented to rustc, as well as to help more experienced folks in figuring out some new part of the compiler that they haven't worked on before.

You can read the latest version of the guide here.

You may also find the rustdocs for the compiler itself useful.

The guide can be useful today, but it has a lot of work still go.

Contributing to the guide

If you'd like to help improve the guide, we'd love to have you! You can find plenty of issues on the issue tracker. Just post a comment on the issue you would like to work on to make sure that we don't accidentally duplicate work. If you think something is missing, please open an issue about it!

In general, if you don't know how the compiler works, that is not a problem! In that case, what we will do is to schedule a bit of time for you to talk with someone who does know the code, or who wants to pair with you and figure it out. Then you can work on writing up what you learned.

In general, when writing about a particular part of the compiler's code, we recommend that you link to the relevant parts of the rustc rustdocs.

To help prevent accidentally introducing broken links, we use the mdbook-linkcheck. If installed on your machine mdbook will automatically invoke this link checker, otherwise it will emit a warning saying it couldn't be found.

> cargo install mdbook-linkcheck

You will need mdbook version >= 0.2. linkcheck will be run automatically when you run mdbook build.