LEE Wondong
3e53c929a2
Fix unicode errors on Windows in path_is_dir, path_exists, getcwd and rust_localtime.
...
This make these functions use wchar_t version of APIs, instead of char version.
2013-10-20 15:02:03 +09:00
Steve Klabnik
309ab958e6
Removing ccdecl
...
as per https://github.com/mozilla/rust/pull/9606#discussion_r6930872
2013-10-14 14:33:05 +02:00
Steve Klabnik
16fc6a694c
Remove unused abi attributes.
...
They've been replaced by putting the name on the extern block.
#[abi = "foo"]
goes to
extern "foo" { }
Closes #9483 .
2013-10-14 13:10:36 +02:00
Scott Lawrence
85f19a845d
std::libc: rustdoc indicates reexports now
2013-10-14 00:48:34 -04:00
Daniel Micay
313052aeb2
rm useless fast_ffi attributes
...
this is no longer used by the compiler
2013-10-08 09:03:43 -04:00
Felix S. Klock II
48b4b1f52c
errfunc ptr is nullable, so use Option as part of interface to glob ( #7752 ).
2013-09-25 23:38:59 +02:00
Felix S. Klock II
7e809819c6
#7752 : use fcnptr for glob errfunc.
2013-09-25 15:50:15 +02:00
Jyun-Yan You
d11f746cc1
fix compilation errors of mips target
2013-09-18 10:10:32 +08:00
klutzy
05b6a2f59c
std: Add Win64 support
...
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-26 22:15:45 +09:00
klutzy
37e99ae4cd
std: Add Win64 types
2013-08-26 22:15:27 +09:00
bors
9765f337a9
auto merge of #8602 : sanxiyn/rust/sysconf, r=graydon
...
Linux and Android share the kernel, but not the C library, so sysconf constants are different. For example, _SC_PAGESIZE is 30 on Linux, but 39 on Android.
This patch
* splits sysconf constants to sysconf module
* merges non-MIPS and MIPS sysconf constants (they are same)
* adds Android sysconf constants
This patch also lets mmap tests to pass on Android.
2013-08-21 06:31:44 -07:00
Niko Matsakis
0479d946c8
Add externfn macro and correctly label fixed_stack_segments
2013-08-19 07:13:15 -04:00
Seo Sanghyeon
337c406b80
Add sysconf names for Android
2013-08-14 20:51:47 +09:00
Erick Tryzelaar
bd908d4c0e
std and rustc: explicitly pass c strings to c functions
...
When strings lose their trailing null, this pattern will become dangerous:
let foo = "bar";
let foo_ptr: *u8 = &foo[0];
Instead we should use c_strs to handle this correctly.
2013-08-04 15:45:16 -07:00
Patrick Walton
9457ebee55
librustc: Disallow "unsafe" for external functions
2013-08-02 21:57:59 -07:00
Corey Richardson
2b026718c3
Add a boatload of Linux x86/x86-64/arm errnos
2013-08-01 15:37:01 -04:00
Patrick Walton
06594ed96b
librustc: Remove pub extern and priv extern from the language.
...
Place `pub` or `priv` on individual items instead.
2013-07-20 17:39:38 -07:00
Kevin Mehall
663a9597b2
Document std::libc::c_void.
2013-07-10 08:55:14 -04:00
Fedor Indutny
db24ee9db0
os: introduce cross-platform MemoryMap bindings
...
Basically, one may just do:
MemoryMap::new(16, ~[
MapExecutable,
MapReadable,
MapWritable
])
And executable+readable+writable chunk of at least 16 bytes size will be
allocated and freed with the result of `MemoryMap::new`.
2013-07-09 19:20:26 +04:00
Fedor Indutny
4a868c7c1d
libc: add errno values
2013-07-08 10:36:43 +04:00
Fedor Indutny
822dc5f1f6
libc: VirtualAlloc and FileMapping bindings
2013-07-08 10:36:43 +04:00
Fedor Indutny
1c56046d51
libc: add _SC_* consts for non-mips linux too
...
They was previously missing
2013-07-08 10:36:43 +04:00
Fedor Indutny
6e67701ca8
libc: fix MAP_ANON value on linux
2013-07-08 10:36:43 +04:00
bors
55f155521d
auto merge of #7523 : huonw/rust/uppercase-statics-lint, r=cmr
...
Adds a lint for `static some_lowercase_name: uint = 1;`. Warning by default since it causes confusion, e.g. `static a: uint = 1; ... let a = 2;` => `error: only refutable patterns allowed here`.
2013-07-03 04:31:50 -07:00
Huon Wilson
c437a16c5d
rustc: add a lint to enforce uppercase statics.
2013-07-01 17:52:57 +10:00
Daniel Micay
80ab877841
global_heap: inline malloc_raw and add realloc_raw
2013-06-30 22:22:52 -04:00
Young-il Choi
6b2297d118
std: unused import fix for android
2013-06-27 23:21:40 -04:00
Alex Crichton
c109bed15b
Deny common lints by default for lib{std,extra}
2013-06-25 17:39:43 -07:00
Fedor Indutny
bc70edbb25
libc: (u)int => c_(u)int for consts
2013-06-24 21:06:51 +02:00
Fedor Indutny
ddd6f59283
libc: add POSIX-compatible sysconf consts
...
Because its part of POSIX. Values are taken from FreeBSD, linux
and OSX header files.
2013-06-24 19:04:00 +02:00
Fedor Indutny
079b07df55
libc: support functions from sys/mman.h
...
Because its part of POSIX. Values are taken from FreeBSD, linux
and OSX header files.
2013-06-24 19:04:00 +02:00
bors
f348465283
auto merge of #7128 : yichoi/rust/fix_sometc, r=brson
...
- Fix stat struct for Android (found by SEGV at run-pass/stat.rs)
- Adjust some test cases to rpass for Android
- Modify some script to rpass for Android
2013-06-20 11:35:34 -07:00
Graydon Hoare
d904c72af8
replace #[inline(always)] with #[inline]. r=burningtree.
2013-06-18 14:48:48 -07:00
Young-il Choi
b82370cec6
std: fix stat struct of android (SEGV error from run-pass/stat.rs on android)
2013-06-17 18:53:33 +09:00
Ralph Bodenner
819d07af7f
Update doc references to new names for std, extra, and std::libc
2013-06-16 23:26:08 -07:00
Daniel Micay
8bcefef2f2
libc: omit memcpy, memmove and memset
...
LLVM provides these functions as intrinsics, and will generate calls to
libc when appropriate. They are exposed in the `ptr` module as
`copy_nonoverlapping_memory`, `copy_memory` and `set_memory`.
2013-06-06 15:18:45 -04:00
Alex Crichton
007651cd26
Require documentation by default for libstd
...
Adds documentation for various things that I understand.
Adds #[allow(missing_doc)] for lots of things that I don't understand.
2013-05-30 01:02:55 -05:00
Patrick Walton
0c820d4123
libstd: Rename libcore to libstd and libstd to libextra; update makefiles.
...
This only changes the directory names; it does not change the "real"
metadata names.
2013-05-22 21:57:05 -07:00