rust/src
kennytm 34d9ffec17
Rollup merge of #48934 - Phlosioneer:42453-debug-hygene, r=petrochenkov
Fix hygene issue when deriving Debug

The code for several of the core traits doesn't use hygenic macros.
This isn't a problem, except for the Debug trait, which is the only
one that uses a variable, named "builder".

Variables can't share names with unit structs, so attempting to
[derive(Debug)] on any type while a unit struct with the name
"builder" was in scope would result in an error.

This commit just changes the name of the variable to
"__debug_trait_builder", because I couldn't figure out how to get a
list of all unit structs in-scope from within the derive expansion
function. If someone wants to have a unit struct with
the exact name "__debug_trait_builder", they'll just have to do it
without a [derive(Debug)].

I also checked the implementations of the other built-in derives to
ensure they didn't declare any variables.
2018-03-13 00:54:33 +08: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 Update the dlmalloc submodule 2018-02-10 07:01:27 -08:00
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 fix typos in src/{bootstrap,ci,etc,lib{backtrace,core,fmt_macros}} 2018-02-10 12:22:57 +01:00
libcompiler_builtins@266ea0740a Update compiler-builtins to latest master. 2018-02-13 22:39:11 +01:00
libcore Rollup merge of #48887 - alexcrichton:update-stdsimd, r=kennytm 2018-03-13 00:54:31 +08:00
libfmt_macros fix typos in src/{bootstrap,ci,etc,lib{backtrace,core,fmt_macros}} 2018-02-10 12:22:57 +01:00
libgetopts
libgraphviz mir dataflow: change graphviz output 2018-03-09 13:53:35 -05:00
liblibc@56444a4545 Revert unintentional submodule updates 2018-02-18 00:21:33 +09:00
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 Auto merge of #48691 - Zoxc:profq-chan, r=michaelwoerister 2018-03-11 04:34:07 +00:00
librustc_allocator Fix up tests and typos 2018-02-18 00:10:40 +09:00
librustc_apfloat fix more typos found by codespell. 2018-02-17 17:38:49 +01:00
librustc_asan
librustc_back Rollup merge of #48725 - humenda:master, r=nikomatsakis 2018-03-13 00:54:26 +08:00
librustc_borrowck Turn features() into a query. 2018-03-05 11:05:01 +01:00
librustc_const_eval Move librustc_const_eval to librustc_mir 2018-03-08 08:08:14 +01:00
librustc_const_math Nuke ConstInt and Const*size 2018-03-08 08:34:10 +01:00
librustc_cratesio_shim
librustc_data_structures Move PROFQ_CHAN to a Session field 2018-03-09 08:04:31 +01:00
librustc_driver Move PROFQ_CHAN to a Session field 2018-03-09 08:04:31 +01: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 Auto merge of #48326 - RalfJung:generic-bounds, r=petrochenkov 2018-03-09 10:45:29 +00:00
librustc_llvm Fully use miri in trans 2018-03-08 08:34:05 +01:00
librustc_lsan
librustc_metadata Hide the RefCell inside InterpretInterner 2018-03-08 08:34:09 +01:00
librustc_mir Remove some commented out code 2018-03-09 19:02:22 -05:00
librustc_msan
librustc_passes Auto merge of #48326 - RalfJung:generic-bounds, r=petrochenkov 2018-03-09 10:45:29 +00: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 Do not panic on tuple struct access out of bounds 2018-03-07 08:48:36 +09:00
librustc_trans Auto merge of #48691 - Zoxc:profq-chan, r=michaelwoerister 2018-03-11 04:34:07 +00: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 Rollup merge of #48928 - zackmdavis:span_suggestion_field_day, r=estebank 2018-03-13 00:54:32 +08:00
librustdoc Auto merge of #48755 - GuillaumeGomez:rustdoc-fixes, r=QuietMisdreavus 2018-03-10 08:24:08 +00:00
libserialize Fix Decodable impl for Arc 2018-03-02 10:45:32 +01:00
libstd Update Cargo submodule 2018-03-11 10:59:28 -07: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 #48934 - Phlosioneer:42453-debug-hygene, r=petrochenkov 2018-03-13 00:54:33 +08:00
tools Rollup merge of #48880 - petrochenkov:badstderr, r=kennytm 2018-03-13 00:54:30 +08:00
Cargo.lock Update Cargo submodule 2018-03-11 10:59:28 -07:00
Cargo.toml Convert python script to rust 2018-02-08 10:53:09 +01:00
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

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: