Commit graph

6659 commits

Author SHA1 Message Date
Brian Anderson 75ce03dd77 Use new mod syntax in check-fast driver 2011-11-24 16:18:26 -08:00
Brian Anderson 7aee9f7b56 rustc: Fix a bug in cdir attribute parsing
The first attribute of the first mod was being applied to every mod.
2011-11-24 16:18:26 -08:00
Haitao Li 3e303af86b rustc: Add a path attribute for crate directives
The path information was an optional "filename" component of crate
directive AST. It is now replaced by an attribute with metadata named
"path".

With this commit, a directive

  mod foo = "foo.rs";

should be written as:

  #[path = "foo.rs"]
  mod foo;

Closes issue #906.
2011-11-24 15:31:18 -08:00
Brian Anderson 547ec241bd Register snapshots 2011-11-24 15:30:04 -08:00
Haitao Li 05b2cb8ecc rustc: Accepts path attributes for crate directives
Temporarily allow path specified in either as attribute or in AST, like:

  #[path = "mymod.rs"]
  mod mymod = "mymod.rs";

This is a transitional commit to avoid creating a stage1 snapshot.
2011-11-24 14:55:53 -08:00
Haitao Li 2253ed5d1c rustc: Fix position of diagnostic highlight lines
Diagnostic highlight lines are incorrect placed when the related line
number is 10, 100, etc.

The root cause is line number are treated as 0 based (should be 1 based)
when calculating offset of line number digits.
2011-11-24 08:10:11 +01:00
Marijn Haverbeke 8746ebe2e6 Add some changes that *should* have been in e98286b594
Forgot to amend the commit after fixing the failure.
2011-11-23 21:22:56 +01:00
Haitao Li 2ac63801d2 doc: Build keywords multitable automatically
Keywords are now listed in a plain text file. They're sorted in
column-major order and rendered as a texinfo multitable in rust.texi.

Fixes issue #1216.
2011-11-23 21:11:18 +01:00
Marijn Haverbeke e98286b594 Allow import directives in any block
Closes #49
2011-11-23 20:57:34 +01:00
Marijn Haverbeke 03f6060e80 Make type_kind properly recognize ty_ptr as sendable 2011-11-23 13:27:04 +01:00
Marijn Haverbeke 9fb3719ded Rollback return-by-reference
It's proving too inflexible, so I'm ripping out the extra complexity
in the hope that regions will, at some point, provide something
similar.

Closes #918
2011-11-23 11:02:27 +01:00
Marijn Haverbeke acbc4aa9f8 Remove deep scope traversal in revoke_clean
It is not needed anymore.
2011-11-23 11:02:27 +01:00
Marijn Haverbeke a8dd52ed36 Remove last traces of auth keyword
The reference now has an empty hole where the auth keyword used to be.
Changing the keyword table seems to require manually sorting the
keywords and putting them back into some kind of arcane interleaved
order. I'll open an issue to actually fix this.

Closes #1211
2011-11-23 11:02:27 +01:00
Brian Anderson 93e8783496 rt: Make __morestack build on win32 2011-11-22 18:02:13 -08:00
Brian Anderson 0580d4e77a rt: Add x86_64 record_sp stub 2011-11-22 18:02:12 -08:00
Brian Anderson 6bdf347418 rt: Make __morestack (without unwinding) work on 32-bit linux 2011-11-22 18:02:10 -08:00
Brian Anderson a69c5617f0 stdlib: Use c_ints instead of ints for natives 2011-11-22 17:16:20 -08:00
Brian Anderson bb7750b8d0 stdlib: Fix some busted macos libc decls 2011-11-22 15:34:53 -08:00
Brian Anderson d0a2f00611 stdlib: win32 fixes for dir handling 2011-11-22 15:14:34 -08:00
Elly Jones 9dd4789d80 Add fs::rmdir() and tempfile/gen_str() tests. 2011-11-22 14:43:18 -08:00
Elly Jones d468af59ed once more with feeling... 2011-11-22 14:43:18 -08:00
Elly Jones 864672bb84 Use type inference! 2011-11-22 14:43:18 -08:00
Elly Jones 91e04f7dd2 Fix long lines 2011-11-22 14:43:18 -08:00
Elly Jones c11c44abc0 std: add fs::mkdir(), rng.gen_str(), tempfile::mkdtemp()
Signed-off-by: Elly Jones <elly@leptoquark.net>
2011-11-22 14:43:18 -08:00
Haitao Li a936f78d98 rustc: Allow trailing comma in record fields 2011-11-22 13:41:17 -08:00
Brian Anderson 901b9adb69 Register snapshots 2011-11-22 13:02:10 -08:00
Stefan Plantikow 148a6c1a38 comp: allowed the declaration of pure fn's in native mods
This is especially useful for the native calls in std::math

This commit does NOT yet point to new snapshots
2011-11-22 20:01:25 +01:00
Marijn Haverbeke fedb775fbb Add hacks to extract and compile tutorial code
Not included in the build by default, since it's fragile and kludgy. Do
something like this to run it:

    cd doc/tutorial
    RUSTC=../../build/stage2/bin/rustc bash test.sh

Closes #1143
2011-11-22 16:12:23 +01:00
Marijn Haverbeke 1b8b0b8584 Properly check for copies when constructing a record using with
Closes #989
2011-11-22 13:27:40 +01:00
Marijn Haverbeke 1ce3a84a8f Make type_needs_drop accurate, get rid of type_has_pointers
Closes #1209
2011-11-22 13:16:23 +01:00
Marijn Haverbeke 532642f425 Clarify escaped newlines in tutorial
Closes #1117
2011-11-22 12:47:07 +01:00
Marijn Haverbeke bd16aac903 Fix inconsistency in ordering of patterns during alt compilation
Closes #1153
2011-11-22 12:44:59 +01:00
Marijn Haverbeke 5d6a74f020 Only warn about unreachable range patterns when appropriate
Also simplifies the literal-munging, and moves it into ast_util

Closes #1170
2011-11-22 11:49:29 +01:00
Marijn Haverbeke 8cc852af8c Make ast::visit only descend into types when necessary
If visit_ty is not overridden, it uses a stub function which does not
descend into types.

Closes #1204
2011-11-22 10:57:47 +01:00
Stefan Plantikow 1a13504796 Fixed documentation comment glitches in the logic ADTs 2011-11-21 11:15:19 -08:00
Stefan Plantikow 1c9f97b669 stdlib: added (2,3,4)-valued logic ADTs
This is useful for writing caches and perhaps in typestate predicates.
It also adds a companion module for bool with from_str, to_str, ... fns.
2011-11-21 11:15:19 -08:00
Haitao Li beced3612e runtest.rs: Fix typo in error message 2011-11-22 00:19:17 +08:00
Haitao Li 5ca83553bc rustc: Remove abi from ast::native_mod 2011-11-21 13:49:52 +01:00
Marijn Haverbeke 7a7f0604f4 Ignore test_log_functions test for now
It fails under valgrind
2011-11-21 13:49:28 +01:00
Marijn Haverbeke 8e2b5de90e Fix typo in tutorial 2011-11-21 13:20:02 +01:00
Stefan Plantikow 2524636dbd std: declared fns in math to be pure; requires calling libc via unsafe 2011-11-21 13:00:00 +01:00
Stefan Plantikow 68839c3dda Added logarithm functions for floats to std::math
Thanks to marijn for helping with #[link_name]
2011-11-21 12:59:59 +01:00
Marijn Haverbeke a6b2a2cdb1 Separate vec::map and vec::map_mut
The safe-reference checker requires a copy of each mapped-over element
only when the vector is mutable. Let's not pay that cost for immutable
vectors.
2011-11-21 12:07:41 +01:00
Marijn Haverbeke 12f6e868f7 Add explanation of kinds to tutorial 2011-11-21 12:07:41 +01:00
Marijn Haverbeke 02574a5bdb Close hole in safe-reference analysis 2011-11-21 12:07:40 +01:00
Marijn Haverbeke b4217b383b Add a pass that checks that blocks are only used in safe ways
Closes #1188
2011-11-21 11:01:15 +01:00
Marijn Haverbeke 86c1f16a10 Fix bad interaction between last-use finding and references
The last-use pass now takes input from the alias pass to not mark things
as last uses that are still accessed through a reference.

Issue #925
2011-11-21 09:25:42 +01:00
Stefan Plantikow ff04cb1eb0 Added a little sudoku solver to test/bench for everone's puzzle solving needs 2011-11-20 01:53:12 +01:00
Brian Anderson 134f7b7611 .gitignore a bunch of artifacts of in-tree builds 2011-11-19 13:49:49 -08:00
Stefan Plantikow 25b44a8973 Added CFG_NOTIDY flag to the build
This should allow a small speedup for test builds; unset by default
2011-11-18 21:19:18 -08:00