Commit Graph

9230 Commits

Author SHA1 Message Date
Tim Chevalier c282810ab0 Enforce privacy declarations for class fields and methods 2012-03-26 10:00:33 -07:00
Marijn Haverbeke a00538b3b3 Fix return-in-block in cargo
Which is apparently not built as part of make check
2012-03-26 13:16:29 +02:00
Marijn Haverbeke b89a5af2ab Check in a forgotten new file 2012-03-26 12:54:06 +02:00
Marijn Haverbeke 87e097a853 Disallow ret inside of block functions
Also adds proper checking for cont/break being inside a loop.

Closes #1854
Issue #1619
2012-03-26 12:45:47 +02:00
Marijn Haverbeke e4c141a331 Fix bug in generation of non-generic resource dtors
Issue #1944
2012-03-26 11:31:17 +02:00
Niko Matsakis 763142816e repair the build---also, make try/commit work over both ty/region vars 2012-03-25 13:32:13 -07:00
Jacob Parker 82e5fe1d72 str::to_chars -> str::chars 2012-03-25 16:29:18 -04:00
Jacob Parker f5c91d10dd Fixed vim highlighting for \' (and other) escapes in char literals 2012-03-25 16:26:48 -04:00
Patrick Walton 8462c6c831 rustc: Generalize several parts of infer in preparation for using them for region bounds as well 2012-03-24 23:14:45 -07:00
Niko Matsakis 1d7d5c16b3 correct more broken tests 2012-03-24 22:15:34 -07:00
Niko Matsakis ac4294a176 add test that was failing from tedh 2012-03-24 21:59:16 -07:00
Niko Matsakis 7ae757ff1a add annotation for variable that used to infer to bot 2012-03-24 21:55:53 -07:00
Niko Matsakis bf9d714d46 Avoid unifying vars when possible; handle bot (more) correctly 2012-03-24 21:38:43 -07:00
Niko Matsakis ee5d0f5e3f new test which features conflicting variance requirements 2012-03-24 21:38:42 -07:00
Patrick Walton bd6e6e349b rustc: Stub some region resolution stuff in infer 2012-03-24 21:30:57 -07:00
Patrick Walton f507b54f19 test: Rename run-pass/simple-regions.rs to run-pass/regions-simple.rs
This groups all the region tests under regions-*.
2012-03-24 19:21:51 -07:00
Patrick Walton 8bef2716fe test: Add a simple test for dangling pointers 2012-03-24 19:00:08 -07:00
Patrick Walton 7c27ec72d1 rustc: Add some simple region checking (no region vars yet)
Amazingly, this causes no test cases to fail!
2012-03-24 18:44:05 -07:00
Niko Matsakis 3e385a80d4 prune unused unification code; leave region code that still needs to be ported 2012-03-24 09:22:09 -07:00
Tim Chevalier aae14e352a Allow methods to call other methods in the same class 2012-03-23 23:10:45 -07:00
Tim Chevalier bebdfe8ce8 Add another test for cross-crate method calls 2012-03-23 23:10:45 -07:00
Niko Matsakis 6b84cee5d3 add a few measly comments, remove some dead code 2012-03-23 22:36:37 -07:00
Niko Matsakis f5edb5ee18 xfail-test regions tests 2012-03-23 22:06:39 -07:00
Niko Matsakis 042c532a08 Implement new inference algorithm. 2012-03-23 21:47:28 -07:00
Tim Chevalier 40443768b1 Fix breakage 2012-03-23 20:53:38 -07:00
Tim Chevalier 8bbd78075f Handle self correctly when translating classes
This change uses the same code for handling the "self" reference for
classes as is already used for impls/ifaces. This allows removing the
extra maybe_self_id argument (which was just for classes) to trans_closure
that I added before. I also rewrote the translation for class ctors so
that it doesn't generate new AST nodes (instead translating directly).

Also changed visit so that it visits class ctors correctly with visit_fn,
and changed typestate to not do return-checking when visiting a class ctor.
2012-03-23 20:37:50 -07:00
Patrick Walton 713b3585c6 rustc: Remove `// */` sequence from trans/base.rs; it breaks vi syntax highlighting 2012-03-23 18:21:23 -07:00
Patrick Walton 0eae490669 rustc: Stub a table of borrowings 2012-03-23 17:28:24 -07:00
Patrick Walton c56910fc9a rustc: Make region folding not descend into function types
Since region parameters are always universally quantified at the function
level, this would be incorrect.
2012-03-23 17:06:24 -07:00
Tim Chevalier 1ffaedac2b Remove unneeded code 2012-03-23 16:25:10 -07:00
Tim Chevalier 17cd9b4308 Remove ctypes -- it's no longer used. 2012-03-23 16:25:10 -07:00
Tim Chevalier cb0eeed539 Remove a FIXME and workaround that appear to be obsolete 2012-03-23 16:25:10 -07:00
Tim Chevalier 372673b58c Remove char::to_lower, char::to_upper, use libc versions instead
As per Graydon's comments on #1985: remove char::to_lower and
char::to_upper. The str versions of these functions now call
libc::tolower and libc::toupper (using wrappers that cast between
char and c_char). Not sure how much better that is, but it at least
makes it clearer that these functions are Unicode-unsafe.
2012-03-23 16:25:10 -07:00
Patrick Walton cab4f1685b test: Add a test case that ensures `ret &EXPR` works. 2012-03-23 16:18:28 -07:00
Patrick Walton cba007e6c8 rustc: Fix parsing of `ret &EXPR`
The parser didn't think that `&` could start an expression.
2012-03-23 16:15:58 -07:00
Patrick Walton 7592dae949 test: Fix unresolved name in regions-mock-trans-impls.rs 2012-03-23 15:44:37 -07:00
Patrick Walton c56ec7b02a test: Add a version of the "mock-trans" regions test case that uses impls 2012-03-23 15:28:47 -07:00
Patrick Walton b9c4dbeb33 test: Fix leak in regions-mock-trans 2012-03-23 15:17:34 -07:00
Patrick Walton df77eb433b test: Fix whitespace at EOL 2012-03-23 15:05:39 -07:00
Patrick Walton aa0f25ae31 test: Add a trans.rs-workalike test case for regions 2012-03-23 14:42:39 -07:00
Patrick Walton 7931a61ebb rustc: Redo region inference to be a bit less broken 2012-03-23 12:22:58 -07:00
Marijn Haverbeke 84019aa0dc Keep an explicit map of things that have to be spilled
This prevents us from spilling locals more than once.

Closes #2040
2012-03-23 16:08:01 +01:00
Marijn Haverbeke 1b81c5112a Remove last vestiges of old-style intrinsics
Closes #2048
2012-03-23 16:08:01 +01:00
Marijn Haverbeke 837478ccb0 Register new snapshot 2012-03-23 16:07:54 +01:00
Marijn Haverbeke a84b56bc70 Remove more needless context threading in trans 2012-03-23 14:45:47 +01:00
Marijn Haverbeke 5cfbbbc9ed Revert resolve kludge that was working around #2049 2012-03-23 13:32:00 +01:00
Marijn Haverbeke 3e7a514521 Fix inconsistent-iteration hazard in map.rs
Closes #2049
2012-03-23 13:30:29 +01:00
Marijn Haverbeke 683085b3f0 Stop trying to link intrinsics.bc 2012-03-23 12:57:37 +01:00
Marijn Haverbeke ca71e01bce Interpret native mods with ABI rust-intrinsic as builtins 2012-03-23 12:52:53 +01:00
Marijn Haverbeke 52d618a99a Revert removal of intrinsics
Oops. We can't do this yet until the next snapshot.
2012-03-23 12:51:20 +01:00