mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-01-31 11:37:35 +00:00
4a59210008
This change improves the way internal APIs are being hidden behind the `COSMO` define. The cosmo.h header will take care of defining that, so that a separate define statement isn't needed. This change also does a lot more to define which APIs are standard, and which belong to Cosmo.
42 lines
1.5 KiB
C
42 lines
1.5 KiB
C
#if 0
|
|
/*─────────────────────────────────────────────────────────────────╗
|
|
│ To the extent possible under law, Justine Tunney has waived │
|
|
│ all copyright and related or neighboring rights to this file, │
|
|
│ as it is written in the following disclaimers: │
|
|
│ • http://unlicense.org/ │
|
|
│ • http://creativecommons.org/publicdomain/zero/1.0/ │
|
|
╚─────────────────────────────────────────────────────────────────*/
|
|
#endif
|
|
#include "libc/intrin/kprintf.h"
|
|
#include "libc/runtime/runtime.h"
|
|
|
|
/**
|
|
* @fileoverview example of how to embed symbol table in .com file
|
|
*
|
|
* # build our binary
|
|
* make -j16 o//examples/symtab.com
|
|
*
|
|
* # move binary somewhere else
|
|
* # so it can't find the .com.dbg binary
|
|
* cp o//examples/symtab.com /tmp
|
|
*
|
|
* # run program
|
|
* # notice that it has a symbolic backtrace
|
|
* /tmp/symtab.com
|
|
*
|
|
* @see examples/examples.mk
|
|
*/
|
|
|
|
int main(int argc, char *argv[]) {
|
|
|
|
// this links all the debugging and zip functionality
|
|
ShowCrashReports();
|
|
|
|
kprintf("----------------\n");
|
|
kprintf(" THIS IS A TEST \n");
|
|
kprintf("SIMULATING CRASH\n");
|
|
kprintf("----------------\n");
|
|
|
|
volatile int64_t x;
|
|
return 1 / (x = 0);
|
|
}
|