rust/src
Jed Davis f76e28aa1c Allow consts' LLVM types to depend on their initializers.
Loosening the connection between the LLVM type and the Rust type
is necessary to use non-nullary enum constructors as const initializers,
because the const needs to be initialized with data of the actual type of
the variant in question, which is (generally) not the same as the u8
array in the `type_of` type.

Thus, referring to a const now requires casting the LLVM global to the
expected pointer type instead of using it as-is.
2013-01-11 23:42:51 -08:00
..
compiletest librustc: Make all external functions unsafe. r=tjc 2013-01-10 21:24:08 -08:00
driver librustc: Terminate name searches at the nearest module scope for paths that contain at least two components. r=graydon 2012-12-27 10:02:54 -08:00
etc fix sugarise-doc-comments.py shebang 2013-01-03 02:40:21 -05:00
libcargo A collection of refactorings that I found it hard/tiresome to divide: 2013-01-09 14:59:07 -08:00
libcore Merge pull request #4443 from wting/4386_add_privs 2013-01-11 20:11:57 -08:00
libfuzzer A collection of refactorings that I found it hard/tiresome to divide: 2013-01-09 14:59:07 -08:00
librustc Allow consts' LLVM types to depend on their initializers. 2013-01-11 23:42:51 -08:00
librustdoc Use filtered instead of filter in rustdoc. Fixes segfault. 2013-01-10 21:26:56 -08:00
librusti Replace much of the REPL run code with a call to compile_upto 2012-12-28 13:51:02 -08:00
libstd Merge pull request #4443 from wting/4386_add_privs 2013-01-11 20:11:57 -08:00
libsyntax libsyntax: Fix name generation in condition! macro 2013-01-11 21:32:10 -05:00
libuv@1170ffba3a rustc: Don't generate landing pad cleanups for boxy things 2012-03-29 16:43:18 -07:00
llvm@accc36b3e3 llvm: fork to disable LiveIRVariabes in GCStrategy. 2012-11-14 18:21:09 -08:00
rt Add core::private::run_in_bare_thread 2013-01-11 14:53:28 -08:00
rustllvm Replace much of the REPL run code with a call to compile_upto 2012-12-28 13:51:02 -08:00
test test: add test for overloading logical negation operator 2013-01-11 16:27:12 -05:00
README.txt Update src/README.txt 2012-11-29 14:24:33 +05:30
snapshots.txt Register snapshots 2012-12-20 12:49:37 -08:00

This is a preliminary version of the Rust compiler, libraries and tools

Source layout:

librustc/          The self-hosted compiler

libcore/           The core library (imported and linked by default)
libstd/            The standard library (slightly more peripheral code)
libsyntax/         The Rust parser and pretty-printer

rt/                The runtime system
rt/rust_*.cpp      - The majority of the runtime services
rt/isaac           - The PRNG used for pseudo-random choices in the runtime
rt/bigint          - The bigint library used for the 'big' type
rt/uthash          - Small hashtable-and-list library for C, used in runtime
rt/sync            - Concurrency utils
rt/util            - Small utility classes for the runtime.
rt/vg              - Valgrind headers
rt/msvc            - MSVC support

test/              Testsuite
test/compile-fail  - Tests that should fail to compile
test/run-fail      - Tests that should compile, run and fail
test/run-pass      - Tests that should compile, run and succeed
test/bench         - Benchmarks and miscellanea
test/pretty        - Pretty-printer tests
test/auxiliary     - Dependencies of tests

compiletest/       The test runner

libcargo/          The package manager

librusti/          The JIT REPL

librustdoc/        The Rust API documentation tool

llvm/              The LLVM submodule

libuv/             The libuv submodule

rustllvm/          LLVM support code

libfuzzer/         A collection of fuzz testers

etc/               Scripts, editor support, misc