Fix bugs and make improvements

- Get clone() working on FreeBSD
- Increase some Python build quotas
- Add more atomic builtins to chibicc
- Fix ASAN poisoning of alloca() memory
- Make MODE= mandatory link path tinier
- Improve the examples folder a little bit
- Start working on some more resource limits
- Make the linenoise auto-complete UI as good as GNU readline
- Update compile.com, avoiding AVX codegen on non-AVX systems
- Make sure empty path to syscalls like opendir raises ENOENT
- Correctly polyfill ENOENT vs. ENOTDIR on the New Technology
- Port bestline's paredit features to //third_party/linenoise
- Remove workarounds for RHEL 5.0 bugs that were fixed in 5.1
This commit is contained in:
Justine Tunney 2022-04-20 09:56:53 -07:00
parent c3fb624647
commit ae638c0850
181 changed files with 2994 additions and 1367 deletions

View file

@ -1539,9 +1539,13 @@ UNIX MODULE
unix.sigaction(unix.SIGALRM, MyOnSigAlrm, unix.SA_RESETHAND)
unix.setitimer(unix.ITIMER_REAL, 0, 0, 1, 0)
unix.strerrno(errno:int) → str
Turns `errno` code into its symbolic name, e.g. `"EINTR"`.
unix.strerror(errno:int) → str
Turns `errno` code into a string describing the error.
Turns `errno` code into a longer string describing the error.
unix.strsignal(sig:int) → str
@ -1776,10 +1780,10 @@ UNIX MODULE
in a supplied path *existed* but wasn't a directory. For example,
if you try to `open("foo/bar")` and `foo` is a regular file, then
`ENOTDIR` will be returned. Raised by open(), access(), chdir(),
chmod(), chown(), chroot(), execve(), fcntl(), futimesat(),
inotify_add_watch(), link(), mkdir(), mknod(), opendir(),
readlink(), rename(), rmdir(), stat(), symlink(), sysctl(),
truncate(), unlink(), utimensat(), bind().
chroot(), execve(), link(), mkdir(), mknod(), opendir(),
readlink(), rename(), rmdir(), stat(), symlink(), truncate(),
unlink(), utimensat(), bind(), chmod(), chown(), fcntl(),
futimesat(), inotify_add_watch().
- `EISDIR`: Is a a directory. Raised by copy_file_range(),
execve(), open(), read(), rename(), truncate(), unlink().