rust/src
Niko Matsakis 8c024fdafb in `Foo(X)` dep-nodes, allow X to be a `ty` not a `tt`
Before, the identifier `X` was also used when generating a pattern
to match against the dep-node. So `Foo(DefId)` would generate a match
pattern like:

    match foo {
        Foo(DefId) => ...
    }

This does not scale to more general types like `&'tcx
Ty<'tcx>`. Therefore, we now require *exactly one* argument (the macro
was internally tupling anyway, and no actual nodes use more than one
argument), and then we can generate a fixed pattern like:

    match foo {
        Foo(arg) => ...
    }

Huzzah. (Also, hygiene is nice.)
2018-03-13 11:21:31 -04:00
..
bootstrap Auto merge of #48295 - Keruspe:master, r=alexcrichton 2018-03-12 08:11:19 +00:00
build_helper
ci Print /proc/cpuinfo and /proc/meminfo before starting to build. 2018-03-10 19:57:03 +08:00
dlmalloc@9b2dcac06c
doc Stabilize const_indexing feature 2018-03-08 08:34:14 +01:00
etc Remove unused 'src/etc/ziggurat_tables.py' Python script. 2018-03-06 19:35:16 -05:00
grammar
jemalloc@1f5a28755e
liballoc Rollup merge of #48877 - GuillaumeGomez:vec-missing-links, r=QuietMisdreavus 2018-03-13 00:54:28 +08:00
liballoc_jemalloc
liballoc_system
libarena
libbacktrace
libcompiler_builtins@266ea0740a
libcore Rollup merge of #48954 - GuillaumeGomez:missing-links-fmt, r=QuietMisdreavus 2018-03-13 05:02:03 +08:00
libfmt_macros
libgetopts
libgraphviz mir dataflow: change graphviz output 2018-03-09 13:53:35 -05:00
liblibc@56444a4545
libpanic_abort
libpanic_unwind make `#[unwind]` attribute specify expectations more clearly 2018-02-20 19:12:52 -05:00
libproc_macro Impl !Send and !Sync for SourceFile 2018-03-02 10:48:52 +01:00
libprofiler_builtins
librustc in `Foo(X)` dep-nodes, allow X to be a `ty` not a `tt` 2018-03-13 11:21:31 -04:00
librustc_allocator
librustc_apfloat
librustc_asan
librustc_back Rollup merge of #48725 - humenda:master, r=nikomatsakis 2018-03-13 00:54:26 +08:00
librustc_borrowck add `canonicalize` method to `InferCtxt` [VIC] 2018-03-13 11:21:31 -04:00
librustc_const_eval add `canonicalize` method to `InferCtxt` [VIC] 2018-03-13 11:21:31 -04:00
librustc_const_math Nuke ConstInt and Const*size 2018-03-08 08:34:10 +01:00
librustc_cratesio_shim
librustc_data_structures add `canonicalize` method to `InferCtxt` [VIC] 2018-03-13 11:21:31 -04:00
librustc_driver refactor `ParamEnv::empty(Reveal)` into two distinct methods 2018-03-13 11:21:30 -04:00
librustc_errors rustc: Migrate to `termcolor` crate from `term` 2018-03-07 07:30:33 -08:00
librustc_incremental Move PROFQ_CHAN to a Session field 2018-03-09 08:04:31 +01:00
librustc_lint refactor `ParamEnv::empty(Reveal)` into two distinct methods 2018-03-13 11:21:30 -04:00
librustc_llvm Fully use miri in trans 2018-03-08 08:34:05 +01:00
librustc_lsan
librustc_metadata add `canonicalize` method to `InferCtxt` [VIC] 2018-03-13 11:21:31 -04:00
librustc_mir add `canonicalize` method to `InferCtxt` [VIC] 2018-03-13 11:21:31 -04:00
librustc_msan
librustc_passes refactor `ParamEnv::empty(Reveal)` into two distinct methods 2018-03-13 11:21:30 -04:00
librustc_platform_intrinsics
librustc_plugin Turn features() into a query. 2018-03-05 11:05:01 +01:00
librustc_privacy Replace Rc with Lrc for shared data 2018-03-02 10:48:52 +01:00
librustc_resolve Update "type parameters from outer function" error messages 2018-03-08 22:28:51 +01:00
librustc_save_analysis add `canonicalize` method to `InferCtxt` [VIC] 2018-03-13 11:21:31 -04:00
librustc_trans refactor `ParamEnv::empty(Reveal)` into two distinct methods 2018-03-13 11:21:30 -04:00
librustc_trans_utils Merge branch 'incr_attr_queries' of https://github.com/wesleywiser/rust into update-cargo 2018-03-07 07:13:21 -08:00
librustc_tsan
librustc_typeck add `canonicalize` method to `InferCtxt` [VIC] 2018-03-13 11:21:31 -04:00
librustdoc add `canonicalize` method to `InferCtxt` [VIC] 2018-03-13 11:21:31 -04:00
libserialize Fix Decodable impl for Arc 2018-03-02 10:45:32 +01:00
libstd Rollup merge of #48480 - jethrogb:patch-5, r=alexcrichton 2018-03-13 05:00:26 +08:00
libstd_unicode Rollup merge of #47463 - bluss:fused-iterator, r=alexcrichton 2018-03-06 20:52:37 +08:00
libsyntax in which some labels and notes are upgraded to structured suggestions 2018-03-11 00:12:06 -08:00
libsyntax_ext Rollup merge of #48934 - Phlosioneer:42453-debug-hygene, r=petrochenkov 2018-03-13 00:54:33 +08:00
libsyntax_pos Don't derive traits on packed structs 2018-03-08 08:35:39 +01:00
libterm
libtest add stub for retrieving number of CPUs 2018-03-10 15:01:51 +01:00
libunwind make `#[unwind]` attribute specify expectations more clearly 2018-02-20 19:12:52 -05:00
llvm@6ceaaa4b01 Merge LLVM fix for undefined bss globals 2018-03-10 12:38:41 +00:00
llvm-emscripten@2717444753
rtstartup
rustc
rustllvm Merge LLVM fix for undefined bss globals 2018-03-10 12:38:41 +00:00
stdsimd@ab9356f2af Update stdsimd module 2018-03-11 10:56:21 -07:00
test Rollup merge of #48898 - GuillaumeGomez:remove-empty-section, r=QuietMisdreavus 2018-03-13 05:01:37 +08:00
tools Rollup merge of #48880 - petrochenkov:badstderr, r=kennytm 2018-03-13 00:54:30 +08:00
Cargo.lock Update the rls-rustc package 2018-03-12 13:02:49 -07:00
Cargo.toml
README.md Start moving to the rustc guide! 2018-02-23 13:20:56 -06:00
stage0.txt Bootstrap from the 1.25 beta 2018-02-20 08:52:33 -07:00

README.md

This directory contains the source code of the rust project, including:

  • rustc and its tests
  • libstd
  • Various submodules for tools, like rustdoc, rls, etc.

For more information on how various parts of the compiler work, see the rustc guide.

Their is also useful content in the following READMEs, which are gradually being moved over to the guide: