| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2011-10-20 | Tweak typecheck to enforce covariance on higher-order function arguments | Brian Anderson | -1/+4 | |
| 2011-10-20 | Remove type coercion from fn to block | Brian Anderson | -48/+4 | |
| fn is a proper subtype of block now | ||||
| 2011-10-20 | Give subtype relationships to function types | Brian Anderson | -2/+57 | |
| 2011-10-20 | Bare functions can coerce to blocks | Brian Anderson | -0/+4 | |
| 2011-10-20 | Bare functions can coerce to shared closures | Brian Anderson | -6/+15 | |
| 2011-10-20 | Revert "Remove the environment argument from bare functions" | Brian Anderson | -35/+7 | |
| This reverts commit 1b0f1f0b79fb29d28bcabb7a8468f4a5a95c0712. | ||||
| 2011-10-20 | Split parsing of fn proto between types, items and anons | Brian Anderson | -6/+30 | |
| The meaning of various fn incantations is going to get temporarily confusing | ||||
| 2011-10-20 | Convert the test runners to typesafe spawn | Brian Anderson | -2/+58 | |
| Issue #1022 | ||||
| 2011-10-20 | Fix the problem with check-fast randomly failing | Brian Anderson | -5/+18 | |
| 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. | ||||
| 2011-10-20 | Don't rely on main.ll anymore | Marijn Haverbeke | -33/+62 | |
| I'll remove the actual file after I register a snapshot. Issue #992 | ||||
| 2011-10-20 | Output linker errors, when linking fails | Marijn Haverbeke | -3/+4 | |
| 2011-10-20 | Get rid of taskpointer-passing throughout the compiler | Marijn Haverbeke | -62/+35 | |
| 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 | ||||
| 2011-10-20 | Do not pass taskpointers to "rust" native functions | Marijn Haverbeke | -1/+1 | |
| Issue #466 | ||||
| 2011-10-20 | Remove taskptr argument from upcalls | Marijn Haverbeke | -44/+31 | |
| Issue #466 | ||||
| 2011-10-20 | Remove spawn_wrap and main_wrap kludges | Marijn Haverbeke | -1/+1 | |
| This isn't needed now that our functions are cdecl (and was apparently only still working by accident). Issue #992 | ||||
| 2011-10-19 | Fail nicer when the parser doesn't find an expected string literal | Brian Anderson | -2/+4 | |
| Closes #1028 | ||||
| 2011-10-18 | Introduce fn@ as a synonym for fn | Brian Anderson | -0/+3 | |
| 2011-10-18 | Immutable and mutable? are covariant on their inner types | Brian Anderson | -3/+10 | |
| Whereas [mutable T] is invariant with respect to T, [T] and [mutable? T] are covariant with respect to T. | ||||
| 2011-10-18 | Add a math module to the standard lib | Marijn Haverbeke | -21/+14 | |
| I need some rudimentary stdlib stuff for the tutorial. Closes #1042 | ||||
| 2011-10-18 | Don't try to build an LLVM switch on floats | Marijn Haverbeke | -1/+2 | |
| Closes #1046 | ||||
| 2011-10-17 | Enforce variance rules for mutable types | Brian Anderson | -40/+48 | |
| 2011-10-17 | Add a variance transform for calculation of recursive variance | Brian Anderson | -14/+53 | |
| 2011-10-17 | Introduce covariance, contravariance and invariance to the type unifier | Brian Anderson | -22/+47 | |
| This will be used to resolve some problems with mutable? covariance and also to implement function subtyping | ||||
| 2011-10-17 | Don't unify from mutable? to immutable | Brian Anderson | -1/+0 | |
| Immutable is supposed to be a subtype of mutable-huh. | ||||
| 2011-10-17 | Split record_var_binding into methods for expected and actual | Brian Anderson | -4/+26 | |
| 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. | ||||
| 2011-10-17 | Correct two more analyses of mutable? as mutable | Brian Anderson | -2/+2 | |
| I can't come up with test cases but this seems correct. | ||||
| 2011-10-17 | Don't allow assignment to mutable-wha? | Brian Anderson | -9/+9 | |
| 2011-10-17 | Change the linkage order on linux and add -ldl | Brian Anderson | -5/+6 | |
| -lrt and -ldl need to be specified after -lrustrt since they are only used by rustrt. | ||||
| 2011-10-16 | Only link librt on linux | Brian Anderson | -1/+8 | |
| 2011-10-16 | Fix link error by explicitly link needed DSOs | Haitao Li | -1/+1 | |
| Building Rust(version 280bc56) on Ubuntu 11.10 failed with link error, like: compile_and_link: stage0/lib/rustc/i686-unknown-linux-gnu/lib/libstd.so compile_and_link: stage0/lib/rustc/i686-unknown-linux-gnu/bin/rustc /local/src/rust/build/stage0/lib/rustc/i686-unknown-linux-gnu/lib/librustrt.so: undefined reference to `clock_gettime' collect2: ld returned 1 exit status error: linking with gcc failed with code 1 GCC toolchain released by Ubuntu 11.10 introduced a few compiler flags that are different with upstream GCC[1]. Flags "-Wl,--as-needed' and '-Wl,--no-copy-dt-needed-entries' are passed by default. Function clock_gettime from librt is used by librustrt, indirectly by rustc. It is necessary to explicitly pass the "-lrt" flags when building rustc. Please note since the toolchain changes will be the default in the next release(2.22) of binutils, this is not actually a Debian/Ubuntu specific issue. 1. https://wiki.ubuntu.com/OneiricOcelot/ReleaseNotes#GCC_4.6_Toolchain Signed-off-by: Haitao Li <lihaitao@gmail.com> | ||||
| 2011-10-14 | Use trans_expr_save_in instead of trans_expr when appropriate | Marijn Haverbeke | -2/+2 | |
| This guards against passing a save_in destination to nil or bot-typed things. | ||||
| 2011-10-14 | Don't crash when reporting an unresolved import in the nil scope | Marijn Haverbeke | -18/+22 | |
| Closes #1027 | ||||
| 2011-10-13 | Remove an unnecessary visitor from rustc::middle::fn_usage | Brian Anderson | -8/+1 | |
| 2011-10-13 | Fix a use of visit in rustc::middle::fn_usage | Brian Anderson | -1/+1 | |
| This was working by just skipping an AST node instead of doing the advertised check. I can't find a test case for it, but this is more correct. | ||||
| 2011-10-13 | Don't allow the value of generic bare functions to be taken | Brian Anderson | -5/+36 | |
| Issue #1038 | ||||
| 2011-10-13 | Rename rustc::middle::unsafeck to fn_usage | Brian Anderson | -15/+15 | |
| I'm going to add further checks unrelated to unsafe. Issue #1038 | ||||
| 2011-10-13 | Make trans_anon_obj properly thread its bcx | Marijn Haverbeke | -9/+3 | |
| Closes #893 Unfortunately, anon objs are still so broken as to be useless (fields don't work). | ||||
| 2011-10-13 | Properly fill single-variant zero-arg tag values. | Marijn Haverbeke | -9/+10 | |
| Closes #1034. Closes #1035. | ||||
| 2011-10-12 | reimplement some of the unsafe stuff which got lost | Niko Matsakis | -115/+97 | |
| - blocks inherit unsafety - remove the --check-unsafe flag - add unsafe annotations where needed to get things to compile | ||||
| 2011-10-12 | remove unsafe tags | Niko Matsakis | -12/+12 | |
| 2011-10-12 | make compiler emit more than 1 error in the case of unsafe | Niko Matsakis | -23/+8 | |
| 2011-10-12 | prohibit ptr deref unless in unsafe code | Niko Matsakis | -2/+20 | |
| 2011-10-12 | fix error msg | Niko Matsakis | -8/+2 | |
| 2011-10-12 | make a good error msg if you try to use an unsafe fn for a test | Niko Matsakis | -8/+21 | |
| 2011-10-12 | improve the span used in test generation | Niko Matsakis | -6/+8 | |
| 2011-10-12 | add pass to check that unsafe fns cannot be used as values | Niko Matsakis | -1/+76 | |
| 2011-10-12 | continue to annotate functions as unsafe where neccessary | Niko Matsakis | -16/+15 | |
| 2011-10-12 | continue to annotate trans functions as unsafe where neccessary | Niko Matsakis | -5/+7 | |
| 2011-10-12 | continue to annotate trans functions as unsafe where neccessary | Niko Matsakis | -3/+3 | |
| 2011-10-12 | add unsafe tags into various points in the translation chains | Niko Matsakis | -73/+125 | |
| and so forth | ||||
