2865 Commits

Author SHA1 Message Date
Brian Anderson
bfbe8870d7 Refactor import lookup in middle:resolve
Issue #817
2011-08-17 11:05:04 -07:00
Brian Anderson
cd54e77720 Allow multiple imports in a single statement
Like so: import foo::{bar, baz};

Issue #817
2011-08-17 11:04:56 -07:00
Brian Anderson
c6482c0083 Refactor ast::view_item to differentiate between [ident]s and paths 2011-08-17 11:04:05 -07:00
Brian Anderson
67cc5b9e34 Allow multiple exports in a single export statement. Issue #817 2011-08-17 11:04:05 -07:00
Brian Anderson
53df58a177 Purge vecs from the std::test interface 2011-08-17 09:55:55 -07:00
Brian Anderson
7bd0437b08 Convert rustc main to ivecs 2011-08-17 09:55:55 -07:00
Graydon Hoare
5a209c8350 Fix some comments. 2011-08-16 17:39:25 -07:00
Graydon Hoare
ce276211f5 Remove dead send/recv operator tokens. 2011-08-16 17:39:25 -07:00
Michael Sullivan
07225e2169 Make a call with the wrong number of arguments non-fatal. Closes #784. 2011-08-16 16:41:29 -07:00
Michael Sullivan
837342242c Make fewer typechecker errors immediately fatal. 2011-08-16 16:39:49 -07:00
Erick Tryzelaar
70b009178c Remove support for expr[T] syntax. 2011-08-16 15:05:57 -07:00
Erick Tryzelaar
c92f5b34d5 Remove support for foo[T] declaration syntax. 2011-08-16 15:05:57 -07:00
Erick Tryzelaar
adb9cde399 Remove type parameter and vec/port/chan foo[T] syntax. 2011-08-16 15:05:57 -07:00
Erick Tryzelaar
af21a27002 Port the compiler to the expr foo::<T> syntax. 2011-08-16 15:05:56 -07:00
Erick Tryzelaar
4abc471390 Port the compiler to foo<T> decl syntax. 2011-08-16 15:05:56 -07:00
Erick Tryzelaar
e4a0f997fb Port the compiler to the typaram foo<T> syntax. 2011-08-16 15:05:56 -07:00
Erick Tryzelaar
014c6922e1 Change expr foo[T] syntax to foo::<T>.
This preserves the old syntax for now.
2011-08-16 14:16:14 -07:00
Erick Tryzelaar
9304b7ee59 Change declaration type parameter syntax to foo<T>. 2011-08-16 14:16:14 -07:00
Erick Tryzelaar
0107d6a81d Change type parameter syntax to foo<T>.
This preserves the old syntax for now.
2011-08-16 14:16:14 -07:00
Patrick Walton
03174b4379 rustc: Implement unique pointer allocation and deallocation 2011-08-16 12:41:53 -07:00
Marijn Haverbeke
27169387fe Remove partial DPS back-end
It won't be finished on the short term, and it's already bit-rotting
fast. We can fetch this from git's autumn annals if we need it.
2011-08-16 21:35:50 +02:00
Eric Holk
3db300b06e Removing port, chan and task shapes. 2011-08-16 12:30:32 -07:00
Michael Sullivan
a9c46e29bc Don't put the target in the bind closure if it is statically known. Closes #177. 2011-08-16 12:13:21 -07:00
Eric Holk
89df915a13 Removing task, chan and port upcalls. 2011-08-16 11:22:24 -07:00
Eric Holk
862bc521a1 Removing tasks, ports and chans from the compiler. 2011-08-16 10:59:49 -07:00
Brian Anderson
f05a91a0dc Rename std::ivec to std::vec 2011-08-16 10:36:19 -07:00
Brian Anderson
38c2363c45 Replace std::ufind with std::ufindivec. Remove std::ufindivec 2011-08-16 10:29:09 -07:00
Brian Anderson
bab29af449 Continue migrating the std #fmt interface to ivecs
Only thing left is to remove some duplicate interfaces in std::extfmt::rt
after the next snapshot
2011-08-16 10:29:09 -07:00
Brian Anderson
46658c4a9c Revert "Revert "Make [] and ~[] both construct ivecs""
This reverts commit 28bf19021981bd41a365aaa684c71afd2cf079d7.

Should work now that tests are all using ivecs
2011-08-16 10:29:09 -07:00
Brian Anderson
184eac90ab Add and use an ivec interface to std::test 2011-08-16 10:29:08 -07:00
Brian Anderson
053b8bff5a Accept main(args: [str]) as main signature 2011-08-16 10:29:08 -07:00
Eric Holk
cf2def46c1 Removed trans_comm.rs from the compiler. Updating aio/sio to work with the new chan and port system, started on a networking module for the standard library. 2011-08-16 09:36:29 -07:00
Marijn Haverbeke
e33af7e0b5 Make let bindings' scope start at their definition
Also, allow let bindings in a block to shadow each other.
2011-08-16 13:45:41 +02:00
Lindsey Kuper
f91351aaf6 The wonky for...in... whitespace was bothering me. Sorry! 2011-08-15 22:19:50 -07:00
Patrick Walton
e3d5b8a8d5 rustc: Add a few type-related methods to unique pointers; add typestate support 2011-08-15 18:12:31 -07:00
Michael Sullivan
42034f5e34 Remove a FIXME that I just made obsolete... 2011-08-15 17:40:08 -07:00
Michael Sullivan
14d85ca87a Make bind glue do an llvm tail call to the target. Closes #2.
Now, llvm probably won't actually *emit* a tail call with the compiler
options and configuration we have, but this should punt it over to the
more general "do tail calls" bug.
2011-08-15 17:36:28 -07:00
Michael Sullivan
f1cec5793f Make GEPi use InBoundsGEP. 2011-08-15 16:19:47 -07:00
Michael Sullivan
9e084469af Pretty print lambda-blocks. 2011-08-15 15:48:11 -07:00
Michael Sullivan
9eb798e965 Change arg typechecking procedure to make blocks more useful. 2011-08-15 15:48:10 -07:00
Michael Sullivan
d68f1a80dc Implement type inference for type-inferred blocks. 2011-08-15 15:48:10 -07:00
Michael Sullivan
9b50011aae Parse type inferred lambda-block expressions. 2011-08-15 15:48:10 -07:00
Graydon Hoare
814bf41d89 Add operator 'copy', translates as fall-through. 2011-08-15 15:44:41 -07:00
Paul Stansifer
ac0e5ea0ef Implement an untyped version of the AST, with a coversion back to the typed AST.. 2011-08-15 15:35:28 -07:00
Paul Stansifer
ebb16e6a25 Use span stacks to track macro expansion for less troublesome error messages. 2011-08-15 15:35:28 -07:00
Paul Stansifer
c48036c0b7 Make spans into stacks (to store expansion backtraces). 2011-08-15 15:35:27 -07:00
Paul Stansifer
87b56b5565 Allow [a, b, ..., c] transcription patterns in MBE. 2011-08-15 15:35:27 -07:00
Paul Stansifer
d2f9b15052 Rename a field (so that macros can mention it). 2011-08-15 15:35:27 -07:00
Paul Stansifer
b803326063 Change node_ids when expanding, to avoid duplicates. 2011-08-15 15:35:27 -07:00
Paul Stansifer
f50a582126 Add a syntax extension to log syntax, for debugging macros. 2011-08-15 15:35:27 -07:00