mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-07-26 12:30:30 +00:00
Bring back gc() function
Renaming gc() to _gc() was a mistake since the better thing to do is put it behind the _COSMO_SOURCE macro. We need this change because I haven't wanted to use my amazing garbage collector ever since we renamed it. You now need to define _COSMO_SOURCE yourself when using amalgamation header and cosmocc users need to pass the -mcosmo flag to get the gc() function Some other issues relating to cancelation have been fixed along the way. We're also now putting cosmocc in a folder named `.cosmocc` so it can be more safely excluded by grep --exclude-dir=.cosmocc --exclude-dir=o etc.
This commit is contained in:
parent
6cb0354e19
commit
a4b455185b
280 changed files with 1362 additions and 1407 deletions
2
third_party/chibicc/chibicc.c
vendored
2
third_party/chibicc/chibicc.c
vendored
|
@ -4,7 +4,7 @@
|
|||
#include "libc/calls/struct/siginfo.h"
|
||||
#include "libc/calls/ucontext.h"
|
||||
#include "libc/fmt/libgen.h"
|
||||
#include "libc/mem/gc.internal.h"
|
||||
#include "libc/mem/gc.h"
|
||||
#include "libc/runtime/runtime.h"
|
||||
#include "libc/sysv/consts/sig.h"
|
||||
#include "libc/x/xasprintf.h"
|
||||
|
|
6
third_party/chibicc/dox1.c
vendored
6
third_party/chibicc/dox1.c
vendored
|
@ -107,15 +107,15 @@ static char *DescribeType(struct Type *ty) {
|
|||
case TY_LDOUBLE:
|
||||
return DescribeScalar(ty, "long double");
|
||||
case TY_FUNC:
|
||||
return xasprintf("%s(*)()", _gc(DescribeType(ty->return_ty)));
|
||||
return xasprintf("%s(*)()", gc(DescribeType(ty->return_ty)));
|
||||
case TY_PTR:
|
||||
if (ty->base->kind == TY_FUNC) {
|
||||
return DescribeType(ty->base);
|
||||
} else {
|
||||
return xasprintf("%s*", _gc(DescribeType(ty->base)));
|
||||
return xasprintf("%s*", gc(DescribeType(ty->base)));
|
||||
}
|
||||
case TY_ARRAY:
|
||||
return xasprintf("%s[%d]", _gc(DescribeType(ty->base)), ty->array_len);
|
||||
return xasprintf("%s[%d]", gc(DescribeType(ty->base)), ty->array_len);
|
||||
case TY_ENUM:
|
||||
if (ty->name) {
|
||||
return xasprintf("enum %.*s", ty->name->len, ty->name->loc);
|
||||
|
|
2
third_party/chibicc/pybind.c
vendored
2
third_party/chibicc/pybind.c
vendored
|
@ -538,7 +538,7 @@ const struct _inittab _PyImport_Inittab_%s = {\n\
|
|||
};\n\
|
||||
",
|
||||
module, module,
|
||||
tok->file->javadown ? _gc(xasprintf("pb_%s_doc", module)) : "0",
|
||||
tok->file->javadown ? gc(xasprintf("pb_%s_doc", module)) : "0",
|
||||
module, module, module, module, module, module);
|
||||
CHECK_NE(-1, (fd = creat(path, 0644)));
|
||||
CHECK_NE(-1, xwrite(fd, b, appendz(b).i));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue