]>
git.lizzy.rs Git - rust.git/log
Niko Matsakis [Thu, 20 Oct 2011 04:53:02 +0000 (21:53 -0700)]
move fs routines to c-stack-stdlib
Niko Matsakis [Wed, 19 Oct 2011 21:54:53 +0000 (14:54 -0700)]
rip out unused task pointers
Niko Matsakis [Wed, 19 Oct 2011 21:47:50 +0000 (14:47 -0700)]
move comm functions out of rust abi
Niko Matsakis [Tue, 18 Oct 2011 05:06:07 +0000 (22:06 -0700)]
purge log_err
Niko Matsakis [Tue, 18 Oct 2011 04:15:50 +0000 (21:15 -0700)]
update vec libs to use c-stack-cdecl calling convention
Brian Anderson [Mon, 24 Oct 2011 20:10:41 +0000 (13:10 -0700)]
Register snapshots
Brian Anderson [Mon, 24 Oct 2011 03:40:42 +0000 (20:40 -0700)]
Revert "Register snapshots"
This reverts commit
6e40f705c167860a976aed9c6a69ed70cf56e6a7 .
Brian Anderson [Mon, 24 Oct 2011 03:40:33 +0000 (20:40 -0700)]
Revert "Register snapshots"
This reverts commit
24a6d334b7e2e7fd2f6f4aa67e3f717af2c93999 .
Brian Anderson [Mon, 24 Oct 2011 03:11:07 +0000 (20:11 -0700)]
Register snapshots
Brian Anderson [Mon, 24 Oct 2011 02:41:55 +0000 (19:41 -0700)]
Register snapshots
Brian Anderson [Mon, 24 Oct 2011 02:07:55 +0000 (19:07 -0700)]
Add commentary about -znoexecstack
Austin Seipp [Mon, 24 Oct 2011 01:52:31 +0000 (20:52 -0500)]
Make sure librustrt.so is linked with a non-executable stack.
Fixes #798.
Austin Seipp [Sun, 23 Oct 2011 19:28:16 +0000 (14:28 -0500)]
Fix an insane rt build error running 'make check -j3'
Brian Anderson [Sun, 23 Oct 2011 21:23:09 +0000 (14:23 -0700)]
Remove a test binary that shouldn't exist
Brian Anderson [Sun, 23 Oct 2011 20:52:19 +0000 (13:52 -0700)]
Add Austin Seipp to AUTHORS.txt
Austin Seipp [Sun, 23 Oct 2011 06:01:53 +0000 (01:01 -0500)]
Make sure $CFG_LLVM_CONFIG is set to $CFG_LLVM_ROOT/bin/llvm-config
On my machine I have two LLVM builds, one of regular HEAD and one
for Rust in ~/rust-llvm - by default CFG_LLVM_CONFIG is set to
/usr/local/bin/llvm-config which is wrong, because the probe for it
initially happens earlier in configure and succeeds (so putvar is called.)
This causes it to be emitted twice into the Makefile but the second
instance wins.
Brian Anderson [Sun, 23 Oct 2011 00:38:27 +0000 (17:38 -0700)]
Update src/etc/gyp-uv
Make instructions more accurate. Make the sed commands work on linux.
Brian Anderson [Sun, 23 Oct 2011 00:37:18 +0000 (17:37 -0700)]
Brian Anderson [Sat, 22 Oct 2011 00:43:31 +0000 (17:43 -0700)]
Remove hack to break the AST fold cycle. Closes #998
Brian Anderson [Sat, 22 Oct 2011 00:35:52 +0000 (17:35 -0700)]
Get 'make tidy' to work rustllvm and rt again
Brian Anderson [Sat, 22 Oct 2011 00:27:17 +0000 (17:27 -0700)]
Register snapshots
Brian Anderson [Sat, 22 Oct 2011 00:21:59 +0000 (17:21 -0700)]
Cycle-collect objects
Niko Matsakis [Thu, 20 Oct 2011 17:25:21 +0000 (10:25 -0700)]
update trans_c_stack_native_call() to use type_of_explicit_args()
currently trans_c_stack_native_call() had some ad-hoc code for
determining the type of the arguments. this code was not in
agreement with the rest of trans. now it uses the same code path.
Niko Matsakis [Tue, 18 Oct 2011 04:56:59 +0000 (21:56 -0700)]
add get_type_desc to list of exported funcs
Niko Matsakis [Tue, 18 Oct 2011 04:13:24 +0000 (21:13 -0700)]
add get_type_desc function to library
Niko Matsakis [Tue, 18 Oct 2011 03:46:03 +0000 (20:46 -0700)]
avoid extra load for by_mutable_ref parameters
Brian Anderson [Fri, 21 Oct 2011 22:06:02 +0000 (15:06 -0700)]
Free vectors during cc sweep
Brian Anderson [Fri, 21 Oct 2011 20:27:44 +0000 (13:27 -0700)]
Record the internal reference count of environment boxes. Closes #981
Marijn Haverbeke [Fri, 21 Oct 2011 19:06:54 +0000 (21:06 +0200)]
Clean up character pattern in float.rs
This is actually a test to see if I fixed the bot.
Marijn Haverbeke [Fri, 21 Oct 2011 12:55:54 +0000 (14:55 +0200)]
Be more careful when parsing block calls
Previously, the parser would try to interpret this as a block call:
if true {} // No semicolon
{|i, am, a, block|};
Which, though unlikely, might come up in practice.
Marijn Haverbeke [Fri, 21 Oct 2011 12:12:12 +0000 (14:12 +0200)]
Remove some semicolons after block calls
The remaining ones can be removed after the next snapshot. (Or
we can let the next pretty-print pass take care of them.)
Marijn Haverbeke [Fri, 21 Oct 2011 12:11:24 +0000 (14:11 +0200)]
Change the way block calls are parsed, mark them as block-calls.
This makes it possible to omit the semicolon after the block, and will
cause the pretty-printer to properly print such calls (if
pretty-printing of blocks wasn't so broken). Block calls (with the
block outside of the parentheses) can now only occur at statement
level, and their value can not be used. When calling a block-style
function that returns a useful value, the block must be put insde the
parentheses.
Issue #1054
Marijn Haverbeke [Fri, 21 Oct 2011 11:42:26 +0000 (13:42 +0200)]
Drop support for iter, put, and for-each
Closes #1056
Marijn Haverbeke [Fri, 21 Oct 2011 11:14:28 +0000 (13:14 +0200)]
Remove remaining uses of iter and for-each
Issue #1056
Marijn Haverbeke [Fri, 21 Oct 2011 10:41:42 +0000 (12:41 +0200)]
Move ast_util::pat_bindings over to new iter system.
Issue #1056
Marijn Haverbeke [Fri, 21 Oct 2011 10:31:48 +0000 (12:31 +0200)]
Remove last uses of iterators from stdlib
Issue #1056
Marijn Haverbeke [Fri, 21 Oct 2011 10:21:27 +0000 (12:21 +0200)]
Move hash table iteration over to block-taking functions
Issue #1056
Marijn Haverbeke [Fri, 21 Oct 2011 09:34:12 +0000 (11:34 +0200)]
Register new snapshot
(For block argument syntax.)
Marijn Haverbeke [Fri, 21 Oct 2011 09:32:26 +0000 (11:32 +0200)]
Support Ruby-style block argument syntax
Issue #1054
Brian Anderson [Fri, 21 Oct 2011 05:40:21 +0000 (22:40 -0700)]
Run perf on the stage 2 compiler
Brian Anderson [Fri, 21 Oct 2011 03:56:33 +0000 (20:56 -0700)]
Restore broken tests in stdtest::test
Brian Anderson [Fri, 21 Oct 2011 03:54:12 +0000 (20:54 -0700)]
Remove unused empty_fn_ty from rustc::front::test
Brian Anderson [Fri, 21 Oct 2011 03:53:52 +0000 (20:53 -0700)]
Give native functions proto_bare
Brian Anderson [Fri, 21 Oct 2011 03:34:04 +0000 (20:34 -0700)]
Remove temporary fn# syntax
Brian Anderson [Fri, 21 Oct 2011 03:30:20 +0000 (20:30 -0700)]
Remove typeck::proto_to_ty_proto
Brian Anderson [Fri, 21 Oct 2011 02:54:57 +0000 (19:54 -0700)]
Register snapshots
Brian Anderson [Wed, 19 Oct 2011 23:50:03 +0000 (16:50 -0700)]
Get windows working under the bare function regime
Had to ignore some task failure tests due to the current implementation
of spawn which guarantees that there's always something in the spawned
task that needs to be unwound.
Fixed some win-specific build problems.
Brian Anderson [Wed, 19 Oct 2011 21:27:33 +0000 (14:27 -0700)]
Don't allow fn@ items
fn@ is intended to be caputring but isn't implemented.
Brian Anderson [Wed, 19 Oct 2011 04:18:55 +0000 (21:18 -0700)]
Merge ast::proto_shared and ast::proto_closure
Now they are both just proto_shared and proto_shared takes an
argument indicating that it is sugared as 'lambda'
Brian Anderson [Wed, 19 Oct 2011 03:22:46 +0000 (20:22 -0700)]
Rename ast::proto_fn to ast::proto_shared
Brian Anderson [Tue, 18 Oct 2011 22:07:40 +0000 (15:07 -0700)]
Make fn denote a bare function. Convert fn to fn@ as needed
Brian Anderson [Wed, 19 Oct 2011 02:39:09 +0000 (19:39 -0700)]
Parse obj methods as proto_bare
I don't know if this is the right thing to do, but it works
and it lets 'fn' always mean proto_bare
Brian Anderson [Sun, 16 Oct 2011 23:19:12 +0000 (16:19 -0700)]
Tweak typecheck to enforce covariance on higher-order function arguments
Brian Anderson [Sat, 15 Oct 2011 01:32:07 +0000 (18:32 -0700)]
Remove type coercion from fn to block
fn is a proper subtype of block now
Brian Anderson [Sat, 15 Oct 2011 00:34:41 +0000 (17:34 -0700)]
Give subtype relationships to function types
Brian Anderson [Fri, 14 Oct 2011 22:22:25 +0000 (15:22 -0700)]
Bare functions can coerce to blocks
Brian Anderson [Fri, 14 Oct 2011 22:16:05 +0000 (15:16 -0700)]
Bare functions can coerce to shared closures
Brian Anderson [Fri, 14 Oct 2011 22:16:44 +0000 (15:16 -0700)]
Revert "Remove the environment argument from bare functions"
This reverts commit
1b0f1f0b79fb29d28bcabb7a8468f4a5a95c0712 .
Brian Anderson [Fri, 14 Oct 2011 21:57:21 +0000 (14:57 -0700)]
Split parsing of fn proto between types, items and anons
The meaning of various fn incantations is going to get temporarily confusing
Brian Anderson [Fri, 14 Oct 2011 04:23:07 +0000 (21:23 -0700)]
Drop the 2 from the spawn*2 functions
Issue #1022
Brian Anderson [Fri, 14 Oct 2011 03:44:35 +0000 (20:44 -0700)]
Rename std::task::spawn_inner to unsafe_spawn_inner
Delete the rest of the old, unused spawn functions.
Issue #1022
Brian Anderson [Fri, 14 Oct 2011 03:36:53 +0000 (20:36 -0700)]
Stop exporting unsafe spawn functions
Issue #1022
Brian Anderson [Thu, 13 Oct 2011 23:42:43 +0000 (16:42 -0700)]
Convert the test runners to typesafe spawn
Issue #1022
Brian Anderson [Thu, 13 Oct 2011 22:51:17 +0000 (15:51 -0700)]
Convert std::aio to new spawn functions
Issue #1022
Brian Anderson [Thu, 13 Oct 2011 22:38:19 +0000 (15:38 -0700)]
XFAIL task-perf-word-count-generic
This can't be done with bare functions.
Issue #1022
Brian Anderson [Thu, 13 Oct 2011 22:37:07 +0000 (15:37 -0700)]
Convert tests to use bare-fn spawn
Issue #1022
Brian Anderson [Thu, 13 Oct 2011 22:36:04 +0000 (15:36 -0700)]
Add safe versions of spawn using bare functions
Currently they just wrap the unsafe versions. Will need to be rewritten
eventually.
Issue #1022
Brian Anderson [Thu, 20 Oct 2011 23:18:23 +0000 (16:18 -0700)]
Convert DPRINT to LOG in rust_cc.cpp and add more logging
Brian Anderson [Thu, 20 Oct 2011 23:01:20 +0000 (16:01 -0700)]
Un-xfail-fast some tests
check-fast is more reliable now.
Brian Anderson [Thu, 20 Oct 2011 23:00:09 +0000 (16:00 -0700)]
Change run-pass/lots-a-fail.rs from xfail-fast to xfail-win32
All failing tasks leak on windows now
Brian Anderson [Thu, 20 Oct 2011 22:26:26 +0000 (15:26 -0700)]
Fix the problem with check-fast randomly failing
Trans has been assuming that tag node id's are unique across crates and they
are not so, depending on which way the wind is blowing, it would choose to use
a crate-local tag variant instead of the correct one from std.
No test case since I can't come up with a reliable one that compiles in a
reasonable amount of time.
Marijn Haverbeke [Thu, 20 Oct 2011 15:22:32 +0000 (17:22 +0200)]
Register new snapshots
Marijn Haverbeke [Thu, 20 Oct 2011 15:32:10 +0000 (17:32 +0200)]
Remove the last vestiges of main.ll
Closes #992
Marijn Haverbeke [Thu, 20 Oct 2011 11:48:10 +0000 (13:48 +0200)]
Don't rely on main.ll anymore
I'll remove the actual file after I register a snapshot.
Issue #992
Marijn Haverbeke [Thu, 20 Oct 2011 12:58:24 +0000 (14:58 +0200)]
Output linker errors, when linking fails
Marijn Haverbeke [Thu, 20 Oct 2011 09:56:45 +0000 (11:56 +0200)]
Get rid of taskpointer-passing throughout the compiler
Only intrinsics still take a dummy taskptr. We'll have to do some
makefile stunts to snapshot a version without taskptrs-in-intrinsics.
Issue #466
Marijn Haverbeke [Thu, 20 Oct 2011 10:32:43 +0000 (12:32 +0200)]
Do not pass taskpointers to "rust" native functions
Issue #466
Marijn Haverbeke [Thu, 20 Oct 2011 09:42:40 +0000 (11:42 +0200)]
Remove taskptr argument from upcalls
Issue #466
Marijn Haverbeke [Fri, 14 Oct 2011 18:54:11 +0000 (20:54 +0200)]
Remove spawn_wrap and main_wrap kludges
This isn't needed now that our functions are cdecl (and was apparently
only still working by accident).
Issue #992
Marijn Haverbeke [Thu, 20 Oct 2011 08:55:53 +0000 (10:55 +0200)]
Use snap runtime, and the old main.o, for stage1
This is intended to be reverted again after I register the next
snapshot.
Brian Anderson [Thu, 20 Oct 2011 01:04:44 +0000 (18:04 -0700)]
Fail nicer when the parser doesn't find an expected string literal
Closes #1028
Matt Brubeck [Mon, 17 Oct 2011 01:27:33 +0000 (18:27 -0700)]
Fix parse error in constrained-type-missing-check.rs
Brian Anderson [Tue, 18 Oct 2011 19:08:15 +0000 (12:08 -0700)]
Register snapshots
Brian Anderson [Fri, 14 Oct 2011 22:11:30 +0000 (15:11 -0700)]
Introduce fn@ as a synonym for fn
Niko Matsakis [Tue, 18 Oct 2011 17:29:10 +0000 (10:29 -0700)]
make ctags targets phony
Brian Anderson [Tue, 18 Oct 2011 17:35:33 +0000 (10:35 -0700)]
Immutable and mutable? are covariant on their inner types
Whereas [mutable T] is invariant with respect to T, [T] and [mutable? T]
are covariant with respect to T.
Marijn Haverbeke [Tue, 18 Oct 2011 11:45:17 +0000 (13:45 +0200)]
Add a math module to the standard lib
I need some rudimentary stdlib stuff for the tutorial.
Closes #1042
Marijn Haverbeke [Tue, 18 Oct 2011 11:49:28 +0000 (13:49 +0200)]
Don't try to build an LLVM switch on floats
Closes #1046
Marijn Haverbeke [Fri, 14 Oct 2011 10:44:40 +0000 (12:44 +0200)]
Add a print and println to std::io
Matt Brubeck [Tue, 18 Oct 2011 05:47:13 +0000 (22:47 -0700)]
doc: Fix parse errors in list examples in documentation
Matt Brubeck [Tue, 18 Oct 2011 05:33:09 +0000 (22:33 -0700)]
doc: Update 'alt' documentation to remove 'case' keyword
Matt Brubeck [Tue, 18 Oct 2011 02:30:29 +0000 (19:30 -0700)]
doc: 'alt' expressions no longer require parens
Matt Brubeck [Tue, 18 Oct 2011 02:27:40 +0000 (19:27 -0700)]
doc: 'if' expressions no longer require parens
Matt Brubeck [Tue, 18 Oct 2011 02:27:05 +0000 (19:27 -0700)]
doc: 'for' and 'for each' no longer use parens
Matt Brubeck [Tue, 18 Oct 2011 02:26:07 +0000 (19:26 -0700)]
doc: Fix typo (s/pay/may/)
Brian Anderson [Tue, 18 Oct 2011 03:51:34 +0000 (20:51 -0700)]
Enforce variance rules for mutable types
Brian Anderson [Tue, 18 Oct 2011 01:32:49 +0000 (18:32 -0700)]
Add a variance transform for calculation of recursive variance
Brian Anderson [Tue, 18 Oct 2011 01:12:25 +0000 (18:12 -0700)]
Introduce covariance, contravariance and invariance to the type unifier
This will be used to resolve some problems with mutable? covariance and also
to implement function subtyping
Brian Anderson [Mon, 17 Oct 2011 21:28:44 +0000 (14:28 -0700)]
Don't unify from mutable? to immutable
Immutable is supposed to be a subtype of mutable-huh.
Brian Anderson [Mon, 17 Oct 2011 22:06:19 +0000 (15:06 -0700)]
Split record_var_binding into methods for expected and actual
This allows unify to maintain the same subtype relationship between
expected and actual throughout unify, which we are going to need
for mutable? and for function types.