summary refs log tree commit diff
path: root/src/libstd/unstable/dynamic_lib.rs
AgeCommit message (Collapse)AuthorLines
2014-02-27std: Small cleanup and test improvementAlex Crichton-3/+1
This weeds out a bunch of warnings building stdtest on windows, and it also adds a check! macro to the io::fs tests to help diagnose errors that are cropping up on windows platforms as well. cc #12516
2014-02-16std: Rename unstable::mutex::Mutex to StaticNativeMutex.Huon Wilson-2/+2
This better reflects its purpose and design.
2014-02-16std: add an RAII unlocker to Mutex.Huon Wilson-2/+2
This automatically unlocks its lock when it goes out of scope, and provides a safe(ish) method to call .wait.
2014-01-22Replace C types with Rust types in libstd, closes #7313Florian Hahn-20/+19
2014-01-07Fix remaining cases of leaking importsAlex Crichton-2/+3
2013-12-24std: Introduce std::syncAlex Crichton-8/+1
For now, this moves the following modules to std::sync * UnsafeArc (also removed unwrap method) * mpsc_queue * spsc_queue * atomics * mpmc_bounded_queue * deque We may want to remove some of the queues, but for now this moves things out of std::rt into std::sync
2013-12-11Make 'self lifetime illegal.Erik Price-1/+1
Also remove all instances of 'self within the codebase. This fixes #10889.
2013-12-10libstd: Change `atomically` to use RAII.Patrick Walton-28/+26
2013-12-04Revert "libstd: Change `Path::new` to `Path::init`."Kevin Ballard-1/+1
This reverts commit c54427ddfbbab41a39d14f2b1dc4f080cbc2d41b. Leave the #[ignores] in that were added to rustpkg tests. Conflicts: src/librustc/driver/driver.rs src/librustc/metadata/creader.rs
2013-11-29libstd: Change `Path::new` to `Path::init`.Patrick Walton-1/+1
2013-11-26libstd: Remove all non-`proc` uses of `do` from libstdPatrick Walton-16/+16
2013-11-19libstd: Change all uses of `&fn(A)->B` over to `|A|->B` in libstdPatrick Walton-3/+2
2013-11-18Remove the C++ lock_and_signal typeAlex Crichton-7/+5
A the same time this purges all runtime support needed for statically initialized mutexes, moving all users over to the new Mutex type instead.
2013-11-11Remove #[fixed_stack_segment] and #[rust_stack]Alex Crichton-14/+0
These two attributes are no longer useful now that Rust has decided to leave segmented stacks behind. It is assumed that the rust task's stack is always large enough to make an FFI call (due to the stack being very large). There's always the case of stack overflow, however, to consider. This does not change the behavior of stack overflow in Rust. This is still normally triggered by the __morestack function and aborts the whole process. C stack overflow will continue to corrupt the stack, however (as it did before this commit as well). The future improvement of a guard page at the end of every rust stack is still unimplemented and is intended to be the mechanism through which we attempt to detect C stack overflow. Closes #8822 Closes #10155
2013-11-11auto merge of #10394 : yichoi/rust/make_check_pass_android, r=brsonbors-0/+1
To enable test on android bot #9120 some tests are disabled and can be fixed further.
2013-11-10Register new snapshotsAlex Crichton-13/+1
2013-11-10temporarily disable tests on android and tagging issue number #10379Young-il Choi-0/+1
2013-10-22Drop the '2' suffix from logging macrosAlex Crichton-5/+5
Who doesn't like a massive renaming?
2013-10-15path2: Adjust the API to remove all the _str mutation methodsKevin Ballard-1/+1
Add a new trait BytesContainer that is implemented for both byte vectors and strings. Convert Path::from_vec and ::from_str to one function, Path::new(). Remove all the _str-suffixed mutation methods (push, join, with_*, set_*) and modify the non-suffixed versions to use BytesContainer.
2013-10-15path2: Replace the path module outrightKevin Ballard-1/+1
Remove the old path. Rename path2 to path. Update all clients for the new path. Also make some miscellaneous changes to the Path APIs to help the adoption process.
2013-10-05Fix thread safety issues in dynamic_libSteven Fackler-10/+19
The root issue is that dlerror isn't reentrant or even thread safe. The Windows code isn't affected since errno is thread-local on Windows and it's running in an atomically block to ensure there isn't a green thread context switch. Closes #8156
2013-09-30std: Remove usage of fmt!Alex Crichton-6/+6
2013-09-23Find the cratemap at runtime on windows.Luqman Aden-2/+2
2013-09-16switch Drop to `&mut self`Daniel Micay-1/+1
2013-09-11Flag the dynamic_lib tests as ignoredAlex Crichton-1/+3
The library isn't thread-safe, cc #9137
2013-08-28Turned off libstd unit tests that currently fail on Windows.Vadim Chugunov-0/+1
2013-08-26std: Add Win64 supportklutzy-0/+12
Some extern blobs are duplicated without "stdcall" abi, since Win64 does not use any calling convention. (Giving any abi to them causes llvm producing wrong bytecode.)
2013-08-19Add externfn macro and correctly label fixed_stack_segmentsNiko Matsakis-0/+14
2013-08-15Add ToCStr method .with_c_str()Kevin Ballard-2/+2
.with_c_str() is a replacement for the old .as_c_str(), to avoid unnecessary boilerplate. Replace all usages of .to_c_str().with_ref() with .with_c_str().
2013-08-04std: replace str::as_c_str with std::c_strErick Tryzelaar-2/+4
2013-08-01Fix calling destructor on uninitialized dynamic library crash.Steven Stewart-Gallus-36/+70
A test case was also created for this situation to prevent the problem occuring again. A similar problem was also fixed for the symbol method. There was some minor code cleanup.
2013-07-31Move atomically to unstable::sync, and document what it actually does. Close ↵Ben Blum-4/+4
#7872.
2013-06-26auto merge of #7113 : alexcrichton/rust/banned-warnings, r=cmrbors-2/+1
Reopening of #7031, Closes #6963 I imagine though that this will bounce in bors once or twice... Because attributes can't be cfg(stage0)'d off, there's temporarily a lot of new stage0/stage1+ code.
2013-06-25Change finalize -> drop.Luqman Aden-1/+1
2013-06-25Deny common lints by default for lib{std,extra}Alex Crichton-2/+1
2013-06-21libstd: cleanup warningsJames Miller-1/+0
2013-06-15std::dynamic_lib: start fixing windows implementationPhilipp Brueschweiler-16/+33
The code compiles and runs under windows now, but I couldn't look up any symbol from the current executable (dlopen(NULL)), and calling looked up external function handles doesn't seem to work correctly under windows.
2013-06-12Prototyped a dynamic library facility interfaceSteven Stewart-Gallus-0/+199