Commit Graph

488 Commits

Author SHA1 Message Date
Tom Almeida 81107f8cd1 Don't reset read/write every time we check if we can read or write 2018-07-03 10:01:48 +08:00
Tom Almeida e9cecfead3 Return -1 for error in printf 2018-07-03 09:48:21 +08:00
Tom Almeida 0d61f9f4fd Make sure we can actually write before writing anything when using printf 2018-07-03 09:13:48 +08:00
Tom Almeida da664d4919 Merged relibc with branch 2018-07-03 08:39:04 +08:00
jD91mZM2 07dbc6bd76 Fix no_std on redox
Apparently a root-level cfg does not go well with a root-level no_std
2018-07-02 08:53:13 +02:00
jD91mZM2 17778ba1b4 Remove missing rustfmt.toml options 2018-07-02 07:42:33 +02:00
jD91mZM2 9c01673422 Use no_std in inttypes (whoops) 2018-07-01 21:00:03 +02:00
Stephan Vedder cc210361d6 wchar support 2018-07-01 20:59:37 +02:00
jD91mZM2 fb09b03acf Fix compilation on redox 2018-07-01 17:55:24 +02:00
jD91mZM2 541fbcf57c Use ptr::null over 0 2018-06-30 12:19:39 +02:00
jD91mZM2 1fd9a5f249 Moooore fixes :| 2018-06-30 12:15:51 +02:00
Tom Almeida 05b4b76426 Fix some issues 2018-06-30 17:49:34 +08:00
Tom Almeida 10a9081b66 Made sure that something that's unsafe is actually marked as unsafe 2018-06-30 17:47:30 +08:00
Tom Almeida 18418254b9 Made sure lazy_static works with no_std 2018-06-30 17:37:26 +08:00
Tom Almeida 8075447fad Changed FILE to use a vector as a buffer instead of raw pointers. This allows us to remove the large majority of unsafe blocks from the code 2018-06-30 17:37:26 +08:00
Tom Almeida 57f7de1e6d Changed FILE to use a vector as a buffer instead of raw pointers. This allows us to remove the large majority of unsafe blocks from the code 2018-06-30 17:33:02 +08:00
Tom Almeida 4c65f14f9a Fixed some issues with temporary files and moved some raw pointers to Option<&T>s 2018-06-30 17:26:39 +08:00
Tom Almeida 71fa4026f5 Changed FILE to use a vector as a buffer instead of raw pointers. This allows us to remove the large majority of unsafe blocks from the code 2018-06-30 17:26:35 +08:00
Tom Almeida a2dc22123f Merge branch 'master' into 'master'
# Conflicts:
#   src/stdio/src/default.rs
2018-06-30 09:19:54 +00:00
jD91mZM2 674d4e3695 Preallocate because why not 2018-06-30 09:25:05 +02:00
jD91mZM2 234632d319 Workaround compilation errors 2018-06-30 09:19:06 +02:00
Paul Sajna 5c5e237042 Exec Functions (again) (again) 2018-06-28 19:24:04 +00:00
jD91mZM2 2c0f9ce747 Fix off-by-one error and remove utf8 check in mktemp 2018-06-28 08:03:17 +02:00
Jeremy Soller 1f1665fd58 Merge branch 'master' into 'master'
Add the few last things to get gcc_complete working

See merge request redox-os/relibc!146
2018-06-27 21:02:30 +00:00
Paul Sajna 776491bae9 implement mktemp 2018-06-27 20:22:12 +00:00
jD91mZM2 cbc3723c66 Fix signal not being linked correctly 2018-06-26 17:16:56 +02:00
jD91mZM2 727324fd73 Apparently cbindgen works on constants 2018-06-26 16:57:56 +02:00
jD91mZM2 9de73d0e5b Add uname and gethostname 2018-06-26 16:41:19 +02:00
jD91mZM2 844e244851 Use both Tag and Type 2018-06-26 16:05:02 +02:00
jD91mZM2 5fc1459eb9 signal: Make constants visible from C 2018-06-26 11:23:22 +02:00
jD91mZM2 0776de1ae6 Fix inttypes 2018-06-26 11:10:44 +02:00
jD91mZM2 257040e164 Fix a few stat-related things 2018-06-26 10:47:48 +02:00
jD91mZM2 ad324a0e4d Use global_asm for setjmp instead 2018-06-26 10:21:44 +02:00
jD91mZM2 feed73ffcc inttypes 2018-06-26 09:51:07 +02:00
jD91mZM2 441bf9f00b Add the few last things to get gcc_complete working 2018-06-25 11:43:44 +02:00
Jeremy Soller f265d7c5be Fix linking issues with lang items 2018-06-24 09:56:08 -06:00
Jeremy Soller 878f466b67 Update to new ralloc, new panic implementation, new compiler-builtins 2018-06-24 09:50:15 -06:00
jD91mZM2 2283243d95 Replace setjmp lib.rs with empty file 2018-06-23 17:38:15 +02:00
jD91mZM2 4e99b55417 Implement basic setjmp using musl's awesome existing code 2018-06-23 17:38:10 +02:00
Tom Almeida 7e731e0b01 Made sure lazy_static works with no_std 2018-06-23 13:08:28 +08:00
Tom Almeida c7bdd31a18 Merged relibc (#311db758) with branch 2018-06-23 05:13:02 +08:00
Tom Almeida 6bc28203ca Changed FILE to use a vector as a buffer instead of raw pointers. This allows us to remove the large majority of unsafe blocks from the code 2018-06-23 05:01:43 +08:00
jD91mZM2 12ce441f5c Use static mut over UnsafeCell 2018-06-22 22:40:30 +02:00
Tom Almeida b5529c9b71 Fixed some issues with temporary files and moved some raw pointers to Option<&T>s 2018-06-23 04:28:03 +08:00
Tom Almeida 5921f00e90 Changed FILE to use a vector as a buffer instead of raw pointers. This allows us to remove the large majority of unsafe blocks from the code 2018-06-23 04:28:00 +08:00
Tom Almeida 50bfebfe3e Fixed some issues with temporary files and moved some raw pointers to Option<&T>s 2018-06-23 03:44:33 +08:00
Tom Almeida 90c6937f17 Changed FILE to use a vector as a buffer instead of raw pointers. This allows us to remove the large majority of unsafe blocks from the code 2018-06-23 03:44:30 +08:00
jD91mZM2 ea24699798 Fix undefined behavior
Transmuting from an immutable to a mutable reference is undefined
behavior in Rust, with the exception of UnsafeCell which tells the
optimizer to not draw too many conclusions. Sadly UnsafeCell::get cannot
yet be used in statics (see https://github.com/rust-lang/rust/issues/51718),
so this works around that by making the statics into functions and
making C macros to call those.
2018-06-22 21:17:44 +02:00
jD91mZM2 3034114c14 Fix broken comment 2018-06-22 15:02:34 +02:00
jD91mZM2 0a3c8abe95 Fix setlocale return value 2018-06-22 14:54:16 +02:00