Niko Matsakis
212707ce84
make native functions markable as unsafe and incorporate that
...
into the type check
2011-10-12 14:39:34 -07:00
Niko Matsakis
24b201fa48
skip test, remove whitespace
2011-10-12 14:39:34 -07:00
Niko Matsakis
b9a9559c91
correct lines over 78 chars
2011-10-12 14:39:34 -07:00
Niko Matsakis
f3c68e7238
enable unsafe checking but only with a flag --check-unsafe
2011-10-12 14:39:34 -07:00
Niko Matsakis
cbe8da0655
make treatment of unchecked/unsafe blocks more uniform
...
also repair various errors in the parser related to such blocks.
rename checked_blk to default_blk to reflect the fact that it
inherits its purity from the surrounding context.
2011-10-12 14:39:24 -07:00
Niko Matsakis
e9569371f7
add 'u' to one other place it was missing
2011-10-12 14:26:47 -07:00
Niko Matsakis
f304c1bee5
add 'u' to decoder (kinda' important)
2011-10-12 14:26:47 -07:00
Niko Matsakis
8c1231ae5f
fix test to include a main() function
2011-10-12 14:26:47 -07:00
Niko Matsakis
d207bc3a0b
it is also legal to call unsafe functions from other unsafe functions
2011-10-12 14:26:47 -07:00
Niko Matsakis
046ca827dd
Add unsafe blocks, unsafe functions, and two rudimentary tests
...
related to them
2011-10-12 14:26:47 -07:00
Niko Matsakis
29584cc5ac
Extend the unchecked block stuff to allow unsafe blocks as well.
2011-10-12 14:26:47 -07:00
Niko Matsakis
58b8e88356
expand purity to include unsafe
2011-10-12 14:26:47 -07:00
Niko Matsakis
9476692b52
move ctags.rust into src/etc
2011-10-12 13:57:32 -07:00
Niko Matsakis
e1c470c9ed
new targets, TAGS.emacs and TAGS.vi. they must be manually made.
2011-10-12 13:57:32 -07:00
Brian Anderson
99f876e3a8
Make build_environment and trans_bind_thunk GEP bound arguments the same
...
These functions both use GEP_tup_like to get at the arguments bound to the
environment, but they were starting from a different 'level' of the
environment-box structure. Frighteningly, this was leading to them having
different opinions of how the bound arguments were aligned in some cases.
2011-10-12 12:11:07 -07:00
Marijn Haverbeke
306f7fb25f
Simplify copying of uniques
...
We can call take glue, rather than duplicating it inline.
2011-10-12 11:05:20 +02:00
David Rajchenbach-Teller
75bda422df
[Tests] added float tests
2011-10-12 10:56:05 +02:00
David Rajchenbach-Teller
8c9dd54ded
[Renaming] str_to_float is now float::from_str, float_to_str is now float::to_str
2011-10-12 10:56:05 +02:00
David Rajchenbach-Teller
7faed3d87c
[Fix] float.rs: str_to_float reimplemented
2011-10-12 10:56:05 +02:00
David Rajchenbach-Teller
3219c40e18
[Optim] int.rs: reimplemented pow with fast exponentiation
2011-10-12 10:56:05 +02:00
Lindsey Kuper
0d43e90172
Revert "Merge pull request #1025 from elly/master"
...
This reverts commit e12e76e9ba
, reversing
changes made to f480203fdd
.
2011-10-11 22:23:47 -04:00
Lindsey Kuper
813c2eb369
Revert "Revert "Add a test case for #898 . Closes #898.""
...
This reverts commit e305ab3851
.
Oops again. Reverting a mistaken revert.
2011-10-11 22:03:23 -04:00
Lindsey Kuper
e305ab3851
Revert "Add a test case for #898 . Closes #898."
...
This reverts commit f480203fdd
.
Oops. This patch requires people to bump their LLVM version.
2011-10-11 22:00:17 -04:00
Lindsey Kuper
e12e76e9ba
Merge pull request #1025 from elly/master
...
Update LinkModules invocation to use new prototype
2011-10-11 18:53:01 -07:00
Elly Jones
19eae0bc38
Update LinkModules invocation to use new prototype
...
LLVM revision 141606 changes the prototype of llvm::Linker::LinkModules.
Signed-off-by: Elly Jones <elly@leptoquark.net>
2011-10-11 21:32:34 -04:00
Brian Anderson
f480203fdd
Add a test case for #898 . Closes #898 .
...
Seems to have been fixed.
2011-10-11 16:50:50 -07:00
Brian Anderson
55379a97d4
Use the correct function type for external bare functions
...
Issue #1022
2011-10-11 15:12:49 -07:00
Brian Anderson
d8fb86d2e3
Register snapshots
2011-10-11 15:01:27 -07:00
Brian Anderson
cfa2346086
Use a non-ambiguous character for encoding bare functions
...
I was using 'R' and that was already used for records.
Issue #1022
2011-10-11 14:38:15 -07:00
Brian Anderson
8c77d063a9
Add a test for assignment of bare functions
...
Issue #1022
2011-10-11 13:40:31 -07:00
Brian Anderson
b04f84275a
Add a test that bare functions are word-sized
...
Issue #1022
2011-10-11 13:40:28 -07:00
Brian Anderson
90c2402089
Add a test that uses a hypothetical bare-fn spawn signature
...
Issue #1022
2011-10-11 12:10:56 -07:00
Brian Anderson
1b0f1f0b79
Remove the environment argument from bare functions
...
Issue #1022
2011-10-11 10:51:10 -07:00
Brian Anderson
84e98f4f65
Add a test for higher-order bare functions
...
Issue #1022
2011-10-11 10:51:10 -07:00
Brian Anderson
145feb3298
Add a test for binding bare functions
...
Issue #1022
2011-10-11 10:51:10 -07:00
Brian Anderson
5b0f79b75a
Don't allow bind to produce bare functions
...
Issue #1022
2011-10-11 10:51:10 -07:00
Brian Anderson
b277039325
Introduce ast::proto_bare
...
Issue #1022
2011-10-11 10:51:10 -07:00
Brian Anderson
9c46cc58cb
Add a temporary syntax for bare functions
...
Bare functions will be represented as 'fn#' until they're implemented. Then
we'll switch it over to just 'fn'.
Issue #1022
2011-10-11 10:51:09 -07:00
Brian Anderson
2a0644f882
Add David Rajchenbach-Teller to AUTHORS.txt
2011-10-11 08:55:13 -07:00
Brian Anderson
dd484369dc
Fix test dependencies
2011-10-11 08:54:20 -07:00
David Rajchenbach-Teller
2ec85135e2
[Move] Moved str_to_float, float_to_str from compiler to lib
2011-10-11 16:41:34 +02:00
Marijn Haverbeke
33167f7dec
Adjust function signatures to allow for vecs being immediate
...
Some code was relying on vectors being implicitly by-reference (as
non-immediate value). This adds the necessary &&-sigils.
Closes #1021
2011-10-10 16:01:51 +02:00
Marijn Haverbeke
b4bae8fea5
Make vectors and strings immediates again
...
There's no good reason to force them to be spilled anymore. Some
pieces of trans become more elegant this way, and less stack allocs
and load/stores are needed.
Issue #1021
2011-10-10 15:59:16 +02:00
Marijn Haverbeke
5c53959f20
Make bcx_tcx-style accessors return by reference
2011-10-10 12:25:58 +02:00
Marijn Haverbeke
00daeb485c
Move type_is_immediate into ty.rs
2011-10-10 12:23:58 +02:00
Marijn Haverbeke
a35dbf3fd5
Don't spill immediates in order to drop them
...
Issue #1012
2011-10-10 12:20:28 +02:00
Marijn Haverbeke
fa1295343f
Make free glue take a pointer to the heap part (box)
...
This way, it can be used to drop values without first spilling them.
Issue #1012
2011-10-10 10:25:32 +02:00
Brian Anderson
96f6a1861c
Revert "Revert "Stop using (DY)LD_LIBRARY_PATH on Unix""
...
This reverts commit 941d5e737c
.
2011-10-09 15:23:41 -07:00
Brian Anderson
ecfa37d336
Register snapshots
2011-10-09 15:23:34 -07:00
Brian Anderson
941d5e737c
Revert "Stop using (DY)LD_LIBRARY_PATH on Unix"
...
This reverts commit 4b58071f96
.
2011-10-09 15:05:12 -07:00