mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-07-06 11:18:30 +00:00
Add chibicc
This program popped up on Hacker News recently. It's the only modern compiler I've ever seen that doesn't have dependencies and is easily modified. So I added all of the missing GNU extensions I like to use which means it might be possible soon to build on non-Linux and have third party not vendor gcc binaries.
This commit is contained in:
parent
e44a0cf6f8
commit
8da931a7f6
298 changed files with 19493 additions and 11950 deletions
|
@ -68,7 +68,7 @@
|
|||
#include "libc/time/time.h"
|
||||
#include "libc/unicode/unicode.h"
|
||||
#include "libc/x/x.h"
|
||||
#include "third_party/dtoa/dtoa.h"
|
||||
#include "third_party/gdtoa/gdtoa.h"
|
||||
#include "third_party/getopt/getopt.h"
|
||||
#include "tool/build/lib/address.h"
|
||||
#include "tool/build/lib/breakpoint.h"
|
||||
|
@ -277,8 +277,9 @@ static struct sigaction oldsig[4];
|
|||
static void SetupDraw(void);
|
||||
static void Redraw(void);
|
||||
|
||||
static char *FormatDouble(char *b, double x) {
|
||||
return g_fmt(b, x);
|
||||
static char *FormatDouble(char buf[32], long double x) {
|
||||
g_xfmt_p(buf, &x, 15, 32, 0);
|
||||
return buf;
|
||||
}
|
||||
|
||||
static int64_t SignExtend(uint64_t x, char b) {
|
||||
|
@ -2463,7 +2464,7 @@ static void HandleBreakpointFlag(const char *s) {
|
|||
PushBreakpoint(&breakpoints, &b);
|
||||
}
|
||||
|
||||
static noreturn void PrintUsage(int rc, FILE *f) {
|
||||
static wontreturn void PrintUsage(int rc, FILE *f) {
|
||||
fprintf(f, "SYNOPSIS\n\n %s%s", program_invocation_name, USAGE);
|
||||
exit(rc);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue