Commit Graph

8165 Commits

Author SHA1 Message Date
Marijn Haverbeke
e48bf6f3f4 Make occurs check in ty::fixup_vars more reliable
It wouldn't detect cycles that went through several type vars before.

Closes #1464
2012-01-27 18:58:52 +01:00
Marijn Haverbeke
362625008a Allow moving out of mutable unsafe pointers
This makes it possible to de-initialize values anywhere in
memory, which is needed, for example, for a fast imlementation
of vec::pop.
2012-01-27 17:15:40 +01:00
Marijn Haverbeke
dc55c06aa3 Properly check enum types for recursion
Closes #742
2012-01-27 16:03:43 +01:00
Marijn Haverbeke
03e9dac09a Move various trans_ modules under a trans:: umbrella module
Closes #1304
2012-01-27 13:20:36 +01:00
Marijn Haverbeke
b3f06c7d54 Stop passing spans to middle::trans functions that don't need them
Removes a bunch of (eventually) unused arguments. Makes span passing to debuginfo
explicit, instead of relying on the (usually incorrect) spans held in the contexts.

Closes #1439
2012-01-27 13:20:36 +01:00
Brian Anderson
ad5e6091eb Add Donovan Preston to AUTHORS.txt 2012-01-27 01:18:51 -08:00
Marijn Haverbeke
b80f0a3c9f Use the method name 'unary-' for overloading negation
It's less likely to clash with something than 'neg'.

Issue #1520
2012-01-27 10:06:53 +01:00
Brian Anderson
7b67e2d274 rustdoc: Write both crates and mods as header level 1 2012-01-26 23:16:42 -08:00
Brian Anderson
7c925cfaaf core: Long lines 2012-01-26 23:12:30 -08:00
Brian Anderson
7820c2f17a Merge pull request #1684 from rtanglao/master
rustdocs for f32.rs and f64.rs
2012-01-26 23:00:06 -08:00
Brian Anderson
094f91b685 rustdoc: Write markdown for resources 2012-01-26 22:54:20 -08:00
Brian Anderson
ca0aefa8bf rustdoc: Add resource arg tys to doc tree 2012-01-26 22:54:16 -08:00
Roland Tanglao
4e1bf8d692 rustdocs for f32.rs and f64.rs 2012-01-26 22:46:39 -08:00
Brian Anderson
e51ae23317 rustdoc: Apply generic string-op passes to resources 2012-01-26 22:27:13 -08:00
Brian Anderson
4c188fb82f rustdoc: Promote resource long descriptions to brief descriptions 2012-01-26 22:19:47 -08:00
Brian Anderson
21fc2a36d8 rustdoc: Build resource arguments as well 2012-01-26 22:14:16 -08:00
Brian Anderson
06ab83de2c rustdoc: Prune undocumented resources 2012-01-26 22:07:14 -08:00
Brian Anderson
ce7d150493 rustdoc: Add resource attribute docs to the doc tree 2012-01-26 21:39:20 -08:00
Brian Anderson
2efc6004b5 rustdoc: Parse resource doc attributes 2012-01-26 21:20:17 -08:00
Brian Anderson
97a1110c5f rustdoc: Add resource signatures to doc tree 2012-01-26 20:59:15 -08:00
Brian Anderson
9f80a17c0e rustc: Add pprust::res_to_str 2012-01-26 20:54:36 -08:00
Brian Anderson
e44467a47f rustdoc: Add resources to the doc fold 2012-01-26 20:34:16 -08:00
Brian Anderson
23e9f7a1b6 rustdoc: Extract resources from the AST 2012-01-26 20:34:16 -08:00
Brian Anderson
7cf725355a rustdoc: Add a resource node to the doc tree 2012-01-26 20:34:16 -08:00
Brian Anderson
f0ba69a96f Remove the --no-core command-line option
It is superceeded by the #[no_core] attribute
2012-01-26 20:30:46 -08:00
Brian Anderson
a3beeac4ec Register snapshots 2012-01-26 18:39:00 -08:00
Graydon Hoare
0bf992969f Merge pull request #1669 from graydon/inno-setup
Add Inno Setup installer script rather than NSIS
2012-01-26 18:16:30 -08:00
Brian Anderson
a06850c8aa rustdoc: Prune unexported enums and variants 2012-01-26 17:29:55 -08:00
Brian Anderson
28fbb19664 rustc: Switch the --no-core switch to a #[no_core] attribute 2012-01-26 16:43:33 -08:00
Brian Anderson
2220d0f20f rustc: Make core injection a timed pass
It's not much of a pass, but lets be consistent
2012-01-26 16:23:48 -08:00
Brian Anderson
5610205363 rustc: Move core injection to its own module 2012-01-26 16:23:48 -08:00
Brian Anderson
335302f08d std: Fix types in uvtmp tests 2012-01-26 16:19:46 -08:00
Donovan Preston
9e39219d9b Shuffle around to work with rust-spidermonkey 2012-01-26 16:01:26 -08:00
Brian Anderson
6d360d2b02 tutorial: Fix types in gettimeofday example. Closes #1657 2012-01-26 15:45:02 -08:00
Jyun-Yan You
5e250b6951 change the order of llvm include path 2012-01-26 11:44:16 -08:00
Jyun-Yan You
5257a5c6c3 let clang build llvm 2012-01-26 11:44:16 -08:00
Brian Anderson
91ee6afeae rustdoc: Set up the compiler session properly in prep for running resolve 2012-01-26 11:36:29 -08:00
Brian Anderson
38908581f7 rustdoc: Rename astsrv::ctxt.map to ast_map 2012-01-26 11:05:21 -08:00
Marijn Haverbeke
c590bdeea4 Make re-exporting of impls work
Closes #1438
2012-01-26 18:58:35 +01:00
Marijn Haverbeke
6bead0e4cc Use operator names for operator methods
The methods used to implement operators now simply use
the name of the operator itself, except for unary -, which is called
min to not clash with binary -. Index is called [].

Closes #1520
2012-01-26 15:52:28 +01:00
Marijn Haverbeke
3aed4b04ce [makefiles] Make rustc depend on librustc
This ensures the lib is not just built, but also copied into the right
lib directory when a rustc binary is used as make target.
2012-01-26 15:43:39 +01:00
Marijn Haverbeke
305b1c8701 Fix small bug in iface self types
Issue #1661
2012-01-26 15:24:52 +01:00
Marijn Haverbeke
888262b337 Allow operator overloading of the indexing operator
The method `op_index` (which takes a single argument) is used for
this.

Issue #1520
2012-01-26 15:23:11 +01:00
Marijn Haverbeke
87b064b249 First stab at operator overloading
When no built-in interpretation is found for one of the operators
mentioned below, the typechecker will try to turn it into a method
call with the name written next to it. For binary operators, the
method will be called on the LHS with the RHS as only parameter.

Binary:

    +   op_add
    -   op_sub
    *   op_mul
    /   op_div
    %   op_rem
    &   op_and
    |   op_or
    ^   op_xor
    <<  op_shift_left
    >>  op_shift_right
    >>> op_ashift_right

Unary:

    -   op_neg
    !   op_not

Overloading of the indexing ([]) operator isn't finished yet.

Issue #1520
2012-01-26 14:25:06 +01:00
Marijn Haverbeke
1792d9ec96 Use string stored in codemap for pretty-printing comments and literals
Closes #1665
2012-01-26 10:52:08 +01:00
Marijn Haverbeke
ec4d05de3b Remove ty_native_fn
It was being used as a clumsy synonym of ty_fn.
2012-01-26 10:37:50 +01:00
Kevin Cantu
3afc16f7a4 Change FIXME comments in str 2012-01-25 23:20:10 -08:00
Kevin Cantu
4d7c297bea (FIX) Change encoder::encode_metadata to return a [u8] (which will become an LLVM string) 2012-01-25 22:27:29 -08:00
Kevin Cantu
5847cf0367 (TEMPORARY) Break something by making io::mem_buffer_str UTF-8 safe 2012-01-25 21:53:37 -08:00
Brian Anderson
566a4be1f8 rustdoc: Add some test enums to demo module 2012-01-25 21:04:53 -08:00