Commit Graph

12936 Commits

Author SHA1 Message Date
Graydon Hoare
19e70d76fc Guard a bunch more logging calls. Cut 10s off rustc compile time. 2011-01-12 14:49:35 -08:00
Rafael Ávila de Espíndola
c1f2e29596 Produce better errors for invalid imports. 2011-01-12 12:27:31 -08:00
Rafael Ávila de Espíndola
c489abedb4 Call find_final_def directly in fold_view_item_import. It is both cleaner and
faster.
2011-01-12 12:26:59 -08:00
Rafael Ávila de Espíndola
359d72b4d0 Change mod_index_entry to point directly to items and view_items. 2011-01-12 12:26:23 -08:00
Patrick Walton
2aa36777f1 Figure out what tydescs we need to pass when translating parametric function calls 2011-01-12 11:05:38 -08:00
Graydon Hoare
59c9e6caff Guard unguarded log calls that snuck in. Shave 5s off building rustc. 2011-01-11 18:30:22 -08:00
Graydon Hoare
b81aa05fa1 Recursively genericize types and spread across glue. Saves 1mb size, 8s compile time on rustc. 2011-01-11 17:58:03 -08:00
Graydon Hoare
f5bf8d074b Out-of-line all drop glue. Shaves 50kb from rustc. 2011-01-11 16:45:29 -08:00
Graydon Hoare
5e9279586b Make rustboot fn/obj drops generic; cuts 300kb size, 10s compile time off rustc. 2011-01-11 16:25:18 -08:00
Rafael Ávila de Espíndola
34643eeac8 Fix another import case we got wrong: The local environment should not
interfere with the import statements.
2011-01-11 13:59:52 -08:00
Rafael Ávila de Espíndola
c5a766f133 Fix two invalid import cases we were not detecting:
* If an import was unused we would never print any errors for it.
* We would keep the existing environment in scope when descending 'foo.bar'
  and would find 'bar' in the global environment if there was no 'bar' in
  'foo'.
2011-01-11 13:58:39 -08:00
Graydon Hoare
a8eeec1dbd Sketch support for reading multi-file crates in rustc. Add test, not yet working. 2011-01-10 18:18:16 -08:00
Graydon Hoare
11cbbcf79e Add std.path module for pathname manipulations. 2011-01-10 18:17:24 -08:00
Graydon Hoare
b000bfeedc Fail in new_stdio_reader when libc.fopen fails. 2011-01-10 18:16:57 -08:00
Graydon Hoare
e96414a6f0 Further corrections to the Makefile rules covering failing tests. 2011-01-10 14:53:20 -08:00
Brian Anderson
9e5f6d3977 Cleanup circular_buffer 2011-01-10 11:31:33 -08:00
Brian Anderson
295c54e10f Remove the assumption that circular_buffer's buffer has a power of two size
It was not obvious how to make this implementation work when the unit size
was not also a power of two, so for now just make the buffer size a multiple
of the unit size so it can pass all the tests.
2011-01-10 11:31:33 -08:00
Brian Anderson
a077400d4c Remove unused variable in circular_buffer tests 2011-01-10 11:31:33 -08:00
Brian Anderson
4841c9f3f8 Cleanup circular_buffer grow / shrink routines 2011-01-10 11:31:33 -08:00
Brian Anderson
6c6c9acd96 Rename test to reflect that the circular_buffer runtime class is what's being tested 2011-01-10 11:31:33 -08:00
Brian Anderson
97aa599b0d Fix circular_buffer growth when _next != 0 2011-01-10 11:31:33 -08:00
Brian Anderson
ebf8638d31 Remove tabs 2011-01-10 11:31:33 -08:00
Brian Anderson
f1df1d1a51 Don't allow circular_buffer to shrink below its original size when unit_sz is not a power of two 2011-01-10 11:31:33 -08:00
Brian Anderson
5f05ae68e5 Don't allow circular_buffer to shrink below it's initial size 2011-01-10 11:31:32 -08:00
Brian Anderson
04056d89c8 Fix the check for growing the circular_buffer 2011-01-10 11:31:32 -08:00
Brian Anderson
32c1c9f55c Simplify the test for circular_buffer initialization 2011-01-10 11:31:32 -08:00
Graydon Hoare
b5e62b04a0 Un-XFAIL drop-bind-thunk-args.rs. 2011-01-07 17:28:35 -08:00
Graydon Hoare
3b0e207109 Drop closures. Un-XFAIL bind-interior.rs. 2011-01-07 16:26:30 -08:00
Rafael Ávila de Espíndola
2fb09eb585 Add sufficient import support to compile some simple single-crate programs.
This is likely not the final solution. It does repetitive work and doesn't produce
errors for invalid but unused imports. In any case, I think it is a useful step.
2011-01-07 15:17:18 -08:00
Graydon Hoare
3c61793b5a Synthesize closure thunks, and pass closure pointer into fn calls. 2011-01-07 15:12:23 -08:00
Brian Anderson
a9994a2963 Correctly initialize circular_buffer to a power-of-two bytes 2011-01-07 11:34:14 -08:00
Brian Anderson
12eb60c29d Fix .gitignore to re-ignore test binaries with new extensions 2011-01-07 11:33:03 -08:00
Brian Anderson
b7f8566ea9 Make the valgrind suppressions file compatible with older versions 2011-01-07 01:17:05 -05:00
Graydon Hoare
919d5f1c0d New test, bind-interior.rs. 2011-01-06 12:56:30 -08:00
Graydon Hoare
41f47054c8 Un-XFAIL bind-thunk.rs. 2011-01-06 12:56:07 -08:00
Graydon Hoare
27b4c3f962 Whitespace cleanup, and copy target into closure. 2011-01-06 12:55:27 -08:00
Rafael Ávila de Espíndola
fb8eff95e2 Add the boilerplate for folding view items. 2011-01-06 11:26:29 -05:00
Graydon Hoare
62c79fb216 Sketch closure-forming logic for nontrivial bindings. 2011-01-05 18:57:28 -08:00
Graydon Hoare
f3f63da7c8 Translate trivial bindings. Un-XFAIL bind-trivial.rs. 2011-01-05 16:06:01 -08:00
Graydon Hoare
5d2a6c73ca Use uniform pair representation of functions everywhere, including static functions. 2011-01-05 15:31:35 -08:00
Graydon Hoare
4fca7d61dd Fix Yet Another Horrid Makefile Bug that was causing the run-fail tests to silently pass. 2011-01-04 17:57:51 -08:00
Graydon Hoare
7276f85f32 Fix another s/BREQ/SREQ/ in the makefile. 2011-01-04 17:37:51 -08:00
Patrick Walton
b7d2fe57cf rustc: Allow the type unification handler to handle both expected and actual param types 2011-01-04 16:53:28 -08:00
Graydon Hoare
116dd9e338 Correct function pointer type in closure. 2011-01-04 15:29:38 -08:00
Graydon Hoare
2ec0b724c4 Merge remote branch 'espindola/import' 2011-01-04 15:07:38 -08:00
Rafael Ávila de Espíndola
7c8f99fdc1 Add names from imports to the namespace. 2011-01-04 17:58:10 -05:00
Patrick Walton
29fb238a39 rustc: Add an item type accessor 2011-01-04 12:46:11 -08:00
Rafael Ávila de Espíndola
e0fe271d34 Add support for looking up a name introduced by a 'use'.
With this we go from "error: unresolved name: foo" to
"unimplemented definition variant for: foo" in

use foo;
fn main(vec[str] args) {
   foo.bar();
}
2011-01-04 11:35:13 -05:00
Rafael Ávila de Espíndola
5fd3d2ca55 Refactor the view_item code so that it is similar to the code used for
parsing regular items.
2011-01-04 11:34:05 -05:00
Rafael Ávila de Espíndola
35c745da03 Rename use_or_import to view_item. 2011-01-04 11:23:56 -05:00