1
1
# About this guide
2
2
3
- This guide is meant to help document how rustc – the Rust compiler –
4
- works, as well as to help new contributors get involved in rustc
5
- development.
3
+ This guide is meant to help document how rustc – the Rust compiler – works,
4
+ as well as to help new contributors get involved in rustc development.
6
5
7
6
There are seven parts to this guide:
8
7
9
- 1 . [ Building and debugging ` rustc ` ] [ p1 ] : Contains information that should be
10
- useful no matter how you are contributing, about building, debugging,
11
- profiling, etc.
12
- 2 . [ Contributing to ` rustc ` ] [ p2 ] : Contains information that should be useful
13
- no matter how you are contributing, about procedures for contribution, using git
14
- and Github, stabilizing features, etc.
15
- 3 . [ High-Level Compiler Architecture] [ p3 ] : Discusses the high-level
16
- architecture of the compiler and stages of the compile process.
17
- 4 . [ Source Code Representation] [ p4 ] : Describes the process of taking raw source code from the user and
18
- transforming it into various forms that the compiler can work with easily.
19
- 5 . [ Analysis] [ p5 ] : discusses the analyses that the compiler uses to check various
20
- properties of the code and inform later stages of the compile process (e.g., type checking).
8
+ 1 . [ Building and debugging ` rustc ` ] [ p1 ] :
9
+ Contains information that should be useful no matter how you are contributing,
10
+ about building, debugging, profiling, etc.
11
+ 2 . [ Contributing to ` rustc ` ] [ p2 ] :
12
+ Contains information that should be useful no matter how you are contributing,
13
+ about procedures for contribution, using git and Github, stabilizing features, etc.
14
+ 3 . [ High-Level Compiler Architecture] [ p3 ] :
15
+ Discusses the high-level architecture of the compiler and stages of the compile process.
16
+ 4 . [ Source Code Representation] [ p4 ] :
17
+ Describes the process of taking raw source code from the user
18
+ and transforming it into various forms that the compiler can work with easily.
19
+ 5 . [ Analysis] [ p5 ] :
20
+ discusses the analyses that the compiler uses to check various properties of the code
21
+ and inform later stages of the compile process (e.g., type checking).
21
22
6 . [ From MIR to Binaries] [ p6 ] : How linked executable machine code is generated.
22
- 7 . [ Appendices] [ p7 ] at the end with useful reference information. There are a
23
- few of these with different information, including a glossary.
23
+ 7 . [ Appendices] [ p7 ] at the end with useful reference information.
24
+ There are a few of these with different information, including a glossary.
24
25
25
26
[ p1 ] : ./getting-started.md
26
27
[ p2 ] : ./contributing.md
@@ -32,25 +33,26 @@ There are seven parts to this guide:
32
33
33
34
### Constant change
34
35
35
- Keep in mind that ` rustc ` is a real production-quality product, being worked upon continuously by a
36
- sizeable set of contributors.
36
+ Keep in mind that ` rustc ` is a real production-quality product,
37
+ being worked upon continuously by a sizeable set of contributors.
37
38
As such, it has its fair share of codebase churn and technical debt.
38
- In addition, many of the ideas discussed throughout this guide are idealized designs that are not
39
- fully realized yet.
39
+ In addition, many of the ideas discussed throughout this guide are idealized designs
40
+ that are not fully realized yet.
40
41
All this makes keeping this guide completely up to date on everything very hard!
41
42
42
- The Guide itself is of course open-source as well, and the sources can be found at the
43
- [ GitHub repository] .
44
- If you find any mistakes in the guide, please file an issue about it, or even better, open a PR with
45
- a correction!
43
+ The Guide itself is of course open-source as well,
44
+ and the sources can be found at the [ GitHub repository] .
45
+ If you find any mistakes in the guide, please file an issue about it.
46
+ even better, open a PR with a correction!
46
47
47
- If you do contribute to the guide, please see the corresponding
48
- [ subsection on writing documentation in this guide] .
48
+ If you do contribute to the guide,
49
+ please see the corresponding [ subsection on writing documentation in this guide] .
49
50
50
51
[ subsection on writing documentation in this guide ] : contributing.md#contributing-to-rustc-dev-guide
51
52
52
- > “‘All conditioned things are impermanent’ — when one sees this with wisdom, one turns away from
53
- > suffering.” _ The Dhammapada, verse 277_
53
+ > “‘All conditioned things are impermanent’ —
54
+ > when one sees this with wisdom, one turns away from suffering.”
55
+ > _ The Dhammapada, verse 277_
54
56
55
57
## Other places to find information
56
58
0 commit comments