webruby 0.1.2 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/driver/driver.c +12 -0
- data/lib/webruby/config.rb +3 -3
- data/lib/webruby/environment.rb +1 -0
- data/lib/webruby/rake/files.rake +22 -22
- data/lib/webruby/rake/general.rake +0 -1
- data/lib/webruby/utility.rb +2 -0
- data/modules/emscripten/AUTHORS +12 -1
- data/modules/emscripten/cmake/Platform/Emscripten.cmake +152 -15
- data/modules/emscripten/em++ +2 -0
- data/modules/emscripten/em++.bat +1 -1
- data/modules/emscripten/em-config.bat +1 -1
- data/modules/emscripten/emar.bat +1 -1
- data/modules/emscripten/emcc +233 -95
- data/modules/emscripten/emcc.bat +1 -1
- data/modules/emscripten/emconfigure.bat +1 -1
- data/modules/emscripten/emmake.bat +1 -1
- data/modules/emscripten/emranlib.bat +1 -1
- data/modules/emscripten/emscripten.py +221 -217
- data/modules/emscripten/package.json +7 -0
- data/modules/emscripten/src/analyzer.js +1437 -1385
- data/modules/emscripten/src/compiler.js +30 -6
- data/modules/emscripten/src/compiler_phase.html +33 -0
- data/modules/emscripten/src/fastLong.js +6 -6
- data/modules/emscripten/src/headless.js +47 -656
- data/modules/emscripten/src/headlessCanvas.js +618 -0
- data/modules/emscripten/src/intertyper.js +1038 -899
- data/modules/emscripten/src/jsifier.js +818 -714
- data/modules/emscripten/src/library.js +1794 -2968
- data/modules/emscripten/src/library_browser.js +81 -16
- data/modules/emscripten/src/library_egl.js +9 -3
- data/modules/emscripten/src/library_fs.js +1585 -0
- data/modules/emscripten/src/library_gl.js +445 -202
- data/modules/emscripten/src/library_glfw.js +4 -1
- data/modules/emscripten/src/library_glut.js +61 -13
- data/modules/emscripten/src/library_idbfs.js +216 -0
- data/modules/emscripten/src/library_memfs.js +279 -0
- data/modules/emscripten/src/library_nodefs.js +234 -0
- data/modules/emscripten/src/library_openal.js +131 -150
- data/modules/emscripten/src/library_path.js +3 -0
- data/modules/emscripten/src/library_sdl.js +499 -229
- data/modules/emscripten/src/library_sockfs.js +576 -0
- data/modules/emscripten/src/library_tty.js +146 -0
- data/modules/emscripten/src/modules.js +30 -35
- data/modules/emscripten/src/parseTools.js +356 -161
- data/modules/emscripten/src/postamble.js +76 -31
- data/modules/emscripten/src/preamble.js +271 -41
- data/modules/emscripten/src/proxyClient.js +82 -0
- data/modules/emscripten/src/proxyWorker.js +143 -0
- data/modules/emscripten/src/relooper/Relooper.cpp +60 -24
- data/modules/emscripten/src/relooper/Relooper.h +3 -2
- data/modules/emscripten/src/relooper/emscripten/glue.js +20 -10
- data/modules/emscripten/src/relooper/fuzzer.py +19 -10
- data/modules/emscripten/src/relooper/test.cpp +50 -50
- data/modules/emscripten/src/relooper/test.txt +147 -30
- data/modules/emscripten/src/relooper/test2.c +13 -13
- data/modules/emscripten/src/relooper/test2.txt +17 -3
- data/modules/emscripten/src/relooper/test3.c +7 -7
- data/modules/emscripten/src/relooper/test3.txt +36 -7
- data/modules/emscripten/src/relooper/test4.cpp +7 -7
- data/modules/emscripten/src/relooper/test4.txt +28 -7
- data/modules/emscripten/src/relooper/test5.cpp +6 -6
- data/modules/emscripten/src/relooper/test5.txt +34 -10
- data/modules/emscripten/src/relooper/test6.cpp +4 -4
- data/modules/emscripten/src/relooper/test6.txt +17 -3
- data/modules/emscripten/src/relooper/test_dead.cpp +2 -2
- data/modules/emscripten/src/relooper/test_debug.cpp +4 -4
- data/modules/emscripten/src/relooper/test_debug.txt +17 -3
- data/modules/emscripten/src/relooper/test_fuzz1.cpp +9 -9
- data/modules/emscripten/src/relooper/test_fuzz1.txt +45 -5
- data/modules/emscripten/src/relooper/test_fuzz2.cpp +4 -4
- data/modules/emscripten/src/relooper/test_fuzz2.txt +18 -1
- data/modules/emscripten/src/relooper/test_fuzz3.cpp +5 -5
- data/modules/emscripten/src/relooper/test_fuzz3.txt +16 -0
- data/modules/emscripten/src/relooper/test_fuzz4.cpp +5 -5
- data/modules/emscripten/src/relooper/test_fuzz4.txt +25 -3
- data/modules/emscripten/src/relooper/test_fuzz5.cpp +10 -10
- data/modules/emscripten/src/relooper/test_fuzz5.txt +49 -15
- data/modules/emscripten/src/relooper/test_fuzz6.cpp +92 -92
- data/modules/emscripten/src/relooper/test_fuzz6.txt +201 -18
- data/modules/emscripten/src/relooper/test_inf.cpp +184 -184
- data/modules/emscripten/src/relooper/test_inf.txt +1078 -332
- data/modules/emscripten/src/runtime.js +69 -45
- data/modules/emscripten/src/settings.js +48 -919
- data/modules/emscripten/src/shell.html +1 -1
- data/modules/emscripten/src/shell.js +14 -8
- data/modules/emscripten/src/shell_sharedlib.js +18 -1
- data/modules/emscripten/src/simd.js +958 -0
- data/modules/emscripten/src/struct_info.json +1045 -0
- data/modules/emscripten/src/utility.js +11 -0
- data/modules/emscripten/system/bin/sdl-config +13 -0
- data/modules/emscripten/system/include/compat/ctype.h +17 -0
- data/modules/emscripten/system/include/compat/malloc.h +48 -0
- data/modules/emscripten/system/include/compat/math.h +14 -0
- data/modules/emscripten/system/include/compat/netdb.h +22 -0
- data/modules/emscripten/system/include/compat/stdarg.h +16 -0
- data/modules/emscripten/system/include/compat/stdlib.h +16 -0
- data/modules/emscripten/system/include/compat/string.h +17 -0
- data/modules/emscripten/system/include/compat/sys/socketvar.h +14 -0
- data/modules/emscripten/system/include/compat/sys/stat.h +20 -0
- data/modules/emscripten/system/include/{libc → compat}/sys/timeb.h +3 -7
- data/modules/emscripten/system/include/compat/time.h +18 -0
- data/modules/emscripten/system/include/compat/unistd.h +16 -0
- data/modules/emscripten/system/include/compat/xlocale.h +19 -0
- data/modules/emscripten/system/include/emscripten/emscripten.h +48 -7
- data/modules/emscripten/system/include/emscripten/vector.h +6 -0
- data/modules/emscripten/system/include/libc/aio.h +69 -0
- data/modules/emscripten/system/include/libc/alloca.h +13 -13
- data/modules/emscripten/system/include/libc/ar.h +19 -63
- data/modules/emscripten/system/include/libc/arpa/ftp.h +35 -0
- data/modules/emscripten/system/include/libc/arpa/inet.h +36 -0
- data/modules/emscripten/system/include/libc/arpa/nameser.h +467 -0
- data/modules/emscripten/system/include/libc/arpa/nameser_compat.h +2 -0
- data/modules/emscripten/system/include/libc/arpa/telnet.h +251 -0
- data/modules/emscripten/system/include/libc/arpa/tftp.h +31 -0
- data/modules/emscripten/system/include/libc/assert.h +9 -36
- data/modules/emscripten/system/include/libc/bits/alltypes.h +397 -0
- data/modules/emscripten/system/include/libc/bits/endian.h +1 -0
- data/modules/emscripten/system/include/libc/bits/errno.h +134 -0
- data/modules/emscripten/system/include/libc/bits/fcntl.h +38 -0
- data/modules/emscripten/system/include/libc/bits/fenv.h +34 -0
- data/modules/emscripten/system/include/libc/bits/float.h +17 -0
- data/modules/emscripten/system/include/libc/bits/io.h +0 -0
- data/modules/emscripten/system/include/libc/bits/ioctl.h +197 -0
- data/modules/emscripten/system/include/libc/bits/ipc.h +14 -0
- data/modules/emscripten/system/include/libc/bits/limits.h +8 -0
- data/modules/emscripten/system/include/libc/bits/mman.h +62 -0
- data/modules/emscripten/system/include/libc/bits/msg.h +16 -0
- data/modules/emscripten/system/include/libc/bits/posix.h +2 -0
- data/modules/emscripten/system/include/libc/bits/reg.h +19 -0
- data/modules/emscripten/system/include/libc/bits/setjmp.h +1 -0
- data/modules/emscripten/system/include/libc/bits/shm.h +18 -0
- data/modules/emscripten/system/include/libc/bits/signal.h +112 -0
- data/modules/emscripten/system/include/libc/bits/socket.h +17 -0
- data/modules/emscripten/system/include/libc/bits/stat.h +22 -0
- data/modules/emscripten/system/include/libc/bits/statfs.h +7 -0
- data/modules/emscripten/system/include/libc/bits/stdarg.h +4 -0
- data/modules/emscripten/system/include/libc/bits/stdint.h +20 -0
- data/modules/emscripten/system/include/libc/bits/syscall.h +696 -0
- data/modules/emscripten/system/include/libc/bits/termios.h +160 -0
- data/modules/emscripten/system/include/libc/bits/user.h +48 -0
- data/modules/emscripten/system/include/libc/byteswap.h +26 -0
- data/modules/emscripten/system/include/libc/complex.h +55 -54
- data/modules/emscripten/system/include/libc/cpio.h +29 -0
- data/modules/emscripten/system/include/libc/crypt.h +20 -0
- data/modules/emscripten/system/include/libc/ctype.h +58 -187
- data/modules/emscripten/system/include/libc/dirent.h +69 -6
- data/modules/emscripten/system/include/libc/dlfcn.h +42 -0
- data/modules/emscripten/system/include/libc/elf.h +2555 -0
- data/modules/emscripten/system/include/libc/endian.h +80 -1
- data/modules/emscripten/system/include/libc/err.h +25 -0
- data/modules/emscripten/system/include/libc/errno.h +23 -7
- data/modules/emscripten/system/include/libc/fcntl.h +175 -1
- data/modules/emscripten/system/include/libc/features.h +32 -0
- data/modules/emscripten/system/include/libc/fenv.h +28 -0
- data/modules/emscripten/system/include/libc/float.h +34 -0
- data/modules/emscripten/system/include/libc/fnmatch.h +24 -50
- data/modules/emscripten/system/include/libc/ftw.h +42 -0
- data/modules/emscripten/system/include/libc/getopt.h +22 -187
- data/modules/emscripten/system/include/libc/glob.h +42 -83
- data/modules/emscripten/system/include/libc/grp.h +37 -79
- data/modules/emscripten/system/include/libc/iconv.h +18 -56
- data/modules/emscripten/system/include/libc/ifaddrs.h +24 -53
- data/modules/emscripten/system/include/libc/inttypes.h +208 -271
- data/modules/emscripten/system/include/libc/iso646.h +5 -28
- data/modules/emscripten/system/include/libc/langinfo.h +88 -316
- data/modules/emscripten/system/include/libc/lastlog.h +1 -0
- data/modules/emscripten/system/include/libc/libgen.h +5 -13
- data/modules/emscripten/system/include/libc/libintl.h +25 -0
- data/modules/emscripten/system/include/libc/limits.h +140 -149
- data/modules/emscripten/system/include/libc/link.h +54 -0
- data/modules/emscripten/system/include/libc/locale.h +72 -70
- data/modules/emscripten/system/include/libc/malloc.h +0 -169
- data/modules/emscripten/system/include/libc/math.h +393 -573
- data/modules/emscripten/system/include/libc/memory.h +1 -0
- data/modules/emscripten/system/include/libc/mntent.h +44 -0
- data/modules/emscripten/system/include/libc/monetary.h +23 -0
- data/modules/emscripten/system/include/libc/mqueue.h +36 -0
- data/modules/emscripten/system/include/libc/net/ethernet.h +55 -0
- data/modules/emscripten/system/include/libc/net/if.h +135 -0
- data/modules/emscripten/system/include/libc/net/if_arp.h +133 -0
- data/modules/emscripten/system/include/libc/net/route.h +124 -0
- data/modules/emscripten/system/include/libc/netdb.h +161 -0
- data/modules/emscripten/system/include/libc/netinet/ether.h +14 -0
- data/modules/emscripten/system/include/libc/netinet/icmp6.h +305 -0
- data/modules/emscripten/system/include/libc/netinet/if_ether.h +126 -0
- data/modules/emscripten/system/include/libc/netinet/in.h +336 -0
- data/modules/emscripten/system/include/libc/netinet/in_systm.h +9 -0
- data/modules/emscripten/system/include/libc/netinet/ip.h +186 -0
- data/modules/emscripten/system/include/libc/netinet/ip6.h +142 -0
- data/modules/emscripten/system/include/libc/netinet/ip_icmp.h +192 -0
- data/modules/emscripten/system/include/libc/netinet/tcp.h +71 -0
- data/modules/emscripten/system/include/libc/netinet/udp.h +35 -0
- data/modules/emscripten/system/include/libc/netpacket/packet.h +44 -0
- data/modules/emscripten/system/include/libc/nl_types.h +22 -0
- data/modules/emscripten/system/include/libc/paths.h +30 -5
- data/modules/emscripten/system/include/libc/poll.h +46 -0
- data/modules/emscripten/system/include/libc/pthread.h +191 -331
- data/modules/emscripten/system/include/libc/pty.h +18 -0
- data/modules/emscripten/system/include/libc/pwd.h +33 -62
- data/modules/emscripten/system/include/libc/readme.txt +2 -2
- data/modules/emscripten/system/include/libc/regex.h +53 -93
- data/modules/emscripten/system/include/libc/resolv.h +144 -0
- data/modules/emscripten/system/include/libc/sched.h +124 -89
- data/modules/emscripten/system/include/libc/search.h +40 -48
- data/modules/emscripten/system/include/libc/semaphore.h +35 -0
- data/modules/emscripten/system/include/libc/setjmp.h +35 -13
- data/modules/emscripten/system/include/libc/shadow.h +44 -0
- data/modules/emscripten/system/include/libc/signal.h +245 -20
- data/modules/emscripten/system/include/libc/spawn.h +74 -0
- data/modules/emscripten/system/include/libc/stdalign.h +15 -0
- data/modules/emscripten/system/include/libc/stdarg.h +18 -43
- data/modules/emscripten/system/include/libc/stdbool.h +14 -0
- data/modules/emscripten/system/include/libc/stddef.h +12 -58
- data/modules/emscripten/system/include/libc/stdint.h +82 -458
- data/modules/emscripten/system/include/libc/stdio.h +184 -679
- data/modules/emscripten/system/include/libc/stdio_ext.h +34 -0
- data/modules/emscripten/system/include/libc/stdlib.h +146 -205
- data/modules/emscripten/system/include/libc/stdnoreturn.h +5 -0
- data/modules/emscripten/system/include/libc/string.h +86 -89
- data/modules/emscripten/system/include/libc/strings.h +27 -27
- data/modules/emscripten/system/include/libc/stropts.h +139 -0
- data/modules/emscripten/system/include/libc/sys/acct.h +75 -0
- data/modules/emscripten/system/include/libc/sys/cachectl.h +22 -0
- data/modules/emscripten/system/include/libc/sys/dir.h +0 -8
- data/modules/emscripten/system/include/libc/sys/epoll.h +67 -0
- data/modules/emscripten/system/include/libc/sys/errno.h +2 -190
- data/modules/emscripten/system/include/libc/sys/eventfd.h +26 -0
- data/modules/emscripten/system/include/libc/sys/fcntl.h +2 -4
- data/modules/emscripten/system/include/libc/sys/file.h +20 -1
- data/modules/emscripten/system/include/libc/sys/fsuid.h +20 -0
- data/modules/emscripten/system/include/libc/sys/inotify.h +57 -0
- data/modules/emscripten/system/include/libc/sys/io.h +17 -0
- data/modules/emscripten/system/include/libc/sys/ioctl.h +14 -0
- data/modules/emscripten/system/include/libc/sys/ipc.h +42 -0
- data/modules/emscripten/system/include/{sys/sysctl.h → libc/sys/klog.h} +4 -4
- data/modules/emscripten/system/include/libc/sys/mman.h +55 -0
- data/modules/emscripten/system/include/libc/sys/mount.h +72 -0
- data/modules/emscripten/system/include/libc/sys/msg.h +52 -0
- data/modules/emscripten/system/include/libc/sys/mtio.h +188 -0
- data/modules/emscripten/system/include/libc/sys/param.h +29 -19
- data/modules/emscripten/system/include/libc/sys/personality.h +46 -0
- data/modules/emscripten/system/include/libc/sys/poll.h +2 -0
- data/modules/emscripten/system/include/libc/sys/prctl.h +101 -0
- data/modules/emscripten/system/include/libc/sys/procfs.h +65 -0
- data/modules/emscripten/system/include/libc/sys/ptrace.h +96 -0
- data/modules/emscripten/system/include/libc/sys/reboot.h +20 -0
- data/modules/emscripten/system/include/libc/sys/reg.h +9 -0
- data/modules/emscripten/system/include/libc/sys/resource.h +89 -45
- data/modules/emscripten/system/include/libc/sys/select.h +42 -0
- data/modules/emscripten/system/include/libc/sys/sem.h +82 -0
- data/modules/emscripten/system/include/libc/sys/sendfile.h +22 -0
- data/modules/emscripten/system/include/libc/sys/shm.h +61 -0
- data/modules/emscripten/system/include/libc/sys/signal.h +1 -315
- data/modules/emscripten/system/include/libc/sys/signalfd.h +44 -0
- data/modules/emscripten/system/include/libc/sys/socket.h +299 -0
- data/modules/emscripten/system/include/libc/sys/stat.h +95 -204
- data/modules/emscripten/system/include/libc/sys/statfs.h +32 -0
- data/modules/emscripten/system/include/libc/sys/statvfs.h +57 -0
- data/modules/emscripten/system/include/libc/sys/stropts.h +1 -0
- data/modules/emscripten/system/include/libc/sys/swap.h +21 -0
- data/modules/emscripten/system/include/libc/sys/syscall.h +6 -0
- data/modules/emscripten/system/include/libc/sys/sysctl.h +17 -0
- data/modules/emscripten/system/include/libc/sys/sysinfo.h +36 -0
- data/modules/emscripten/system/include/libc/sys/syslog.h +1 -0
- data/modules/emscripten/system/include/libc/sys/sysmacros.h +15 -0
- data/modules/emscripten/system/include/libc/sys/termios.h +2 -280
- data/modules/emscripten/system/include/libc/sys/time.h +40 -68
- data/modules/emscripten/system/include/libc/sys/timerfd.h +24 -0
- data/modules/emscripten/system/include/libc/sys/times.h +14 -16
- data/modules/emscripten/system/include/libc/sys/timex.h +98 -0
- data/modules/emscripten/system/include/libc/sys/ttydefaults.h +34 -92
- data/modules/emscripten/system/include/libc/sys/types.h +87 -481
- data/modules/emscripten/system/include/libc/sys/ucontext.h +1 -0
- data/modules/emscripten/system/include/libc/sys/uio.h +48 -0
- data/modules/emscripten/system/include/libc/sys/un.h +32 -0
- data/modules/emscripten/system/include/libc/sys/user.h +16 -0
- data/modules/emscripten/system/include/libc/sys/utsname.h +30 -0
- data/modules/emscripten/system/include/libc/sys/vfs.h +1 -0
- data/modules/emscripten/system/include/libc/sys/wait.h +41 -26
- data/modules/emscripten/system/include/libc/sys/xattr.h +30 -0
- data/modules/emscripten/system/include/libc/syscall.h +1 -0
- data/modules/emscripten/system/include/libc/sysexits.h +21 -0
- data/modules/emscripten/system/include/libc/syslog.h +104 -0
- data/modules/emscripten/system/include/libc/tar.h +27 -33
- data/modules/emscripten/system/include/libc/termios.h +40 -1
- data/modules/emscripten/system/include/libc/tgmath.h +270 -0
- data/modules/emscripten/system/include/libc/time.h +96 -237
- data/modules/emscripten/system/include/libc/ucontext.h +25 -0
- data/modules/emscripten/system/include/libc/ulimit.h +17 -0
- data/modules/emscripten/system/include/libc/unistd.h +517 -4
- data/modules/emscripten/system/include/libc/utime.h +15 -3
- data/modules/emscripten/system/include/libc/utmp.h +40 -1
- data/modules/emscripten/system/include/libc/utmpx.h +58 -0
- data/modules/emscripten/system/include/libc/values.h +39 -0
- data/modules/emscripten/system/include/libc/wchar.h +164 -175
- data/modules/emscripten/system/include/libc/wctype.h +67 -37
- data/modules/emscripten/system/include/libc/wordexp.h +31 -42
- data/modules/emscripten/system/include/libcxx/__locale +6 -6
- data/modules/emscripten/system/include/libcxx/locale +1 -1
- data/modules/emscripten/system/lib/libc/musl/readme.txt +9 -1
- data/modules/emscripten/system/lib/libc/musl/src/internal/locale_impl.h +5 -0
- data/modules/emscripten/system/lib/libc/musl/src/internal/stdio_impl.h +92 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/big5.h +1085 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/codepages.h +238 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/gb18030.h +1836 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/hkscs.h +390 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iconv.c +454 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswalnum_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswalpha_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswblank_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswcntrl_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswctype_l.c +9 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswdigit_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswgraph_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswlower_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswprint_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswpunct_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswspace_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswupper_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/iswxdigit_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/jis0208.h +550 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/ksc.h +640 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/legacychars.h +39 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/strfmon.c +101 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/strxfrm.c +18 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/towctrans_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/towlower_l.c +9 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/towupper_l.c +9 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/wcscoll.c +16 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/wcscoll_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/wcsxfrm.c +21 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/wcsxfrm_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/wctrans_l.c +6 -0
- data/modules/emscripten/system/lib/libc/musl/src/locale/wctype_l.c +9 -0
- data/modules/emscripten/system/lib/libc/musl/src/stdio/fwprintf.c +13 -0
- data/modules/emscripten/system/lib/libc/musl/src/stdio/swprintf.c +14 -0
- data/modules/emscripten/system/lib/libc/musl/src/stdio/vfwprintf.c +361 -0
- data/modules/emscripten/system/lib/libc/musl/src/stdio/vswprintf.c +53 -0
- data/modules/emscripten/system/lib/libc/musl/src/stdio/vwprintf.c +7 -0
- data/modules/emscripten/system/lib/libc/musl/src/stdio/wprintf.c +13 -0
- data/modules/emscripten/system/lib/libcextra.symbols +44 -0
- data/modules/emscripten/system/lib/libcxx/exception.cpp +3 -3
- data/modules/emscripten/system/lib/libcxx/locale.cpp +12 -12
- data/modules/emscripten/system/lib/libcxxabi/src/cxa_new_delete.cpp +1 -1
- data/modules/emscripten/tools/asm_module.py +2 -0
- data/modules/emscripten/tools/autodebugger.py +3 -1
- data/modules/emscripten/tools/eliminator/asm-eliminator-test-output.js +0 -4835
- data/modules/emscripten/tools/eliminator/asm-eliminator-test.js +0 -6495
- data/modules/emscripten/tools/file_packager.py +53 -56
- data/modules/emscripten/tools/find_bigfuncs.py +2 -2
- data/modules/emscripten/tools/find_bigvars.py +24 -0
- data/modules/emscripten/tools/gen_struct_info.py +509 -0
- data/modules/emscripten/tools/gen_struct_info.pyc +0 -0
- data/modules/emscripten/tools/js-optimizer.js +177 -86
- data/modules/emscripten/tools/js_optimizer.py +54 -19
- data/modules/emscripten/tools/js_optimizer.pyc +0 -0
- data/modules/emscripten/tools/jsrun.py +17 -7
- data/modules/emscripten/tools/jsrun.pyc +0 -0
- data/modules/emscripten/tools/response_file.py +2 -2
- data/modules/emscripten/tools/response_file.pyc +0 -0
- data/modules/emscripten/tools/shared.py +257 -123
- data/modules/emscripten/tools/shared.pyc +0 -0
- data/modules/emscripten/tools/source-maps/sourcemapper.js +37 -6
- data/modules/emscripten/tools/tempfiles.py +1 -0
- data/modules/emscripten/tools/tempfiles.pyc +0 -0
- data/modules/emscripten/tools/test-js-optimizer-asm-minlast-output.js +2 -0
- data/modules/emscripten/tools/test-js-optimizer-asm-minlast.js +8 -0
- data/modules/emscripten/tools/test-js-optimizer-asm-outline1-output.js +412 -169
- data/modules/emscripten/tools/test-js-optimizer-asm-outline1.js +88 -0
- data/modules/emscripten/tools/test-js-optimizer-asm-outline2-output.js +311 -265
- data/modules/emscripten/tools/test-js-optimizer-asm-pre-output.js +0 -20
- data/modules/emscripten/tools/test-js-optimizer-asm-pre.js +0 -21
- data/modules/emscripten/tools/test-js-optimizer-asm-regs.js +2 -2
- data/modules/emscripten/tools/test-js-optimizer-regs-output.js +8 -8
- data/modules/emscripten/tools/test-js-optimizer-regs.js +1 -1
- data/modules/emscripten/tools/validate_asmjs.py +82 -0
- data/modules/mruby/Rakefile +2 -2
- data/modules/mruby/include/mruby/class.h +2 -2
- data/modules/mruby/include/mruby/compile.h +12 -4
- data/modules/mruby/include/mruby/data.h +8 -3
- data/modules/mruby/include/mruby/debug.h +65 -0
- data/modules/mruby/include/mruby/dump.h +10 -2
- data/modules/mruby/include/mruby/irep.h +1 -0
- data/modules/mruby/include/mruby/string.h +2 -1
- data/modules/mruby/include/mruby/value.h +20 -13
- data/modules/mruby/include/mruby/variable.h +1 -0
- data/modules/mruby/include/mruby.h +5 -6
- data/modules/mruby/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c +6 -4
- data/modules/mruby/mrbgems/mruby-math/src/math.c +4 -0
- data/modules/mruby/mrbgems/mruby-objectspace/src/mruby_objectspace.c +1 -1
- data/modules/mruby/mrbgems/mruby-proc-ext/src/proc.c +1 -1
- data/modules/mruby/mrbgems/mruby-random/src/random.c +1 -4
- data/modules/mruby/mrbgems/mruby-string-ext/src/string.c +25 -16
- data/modules/mruby/mrbgems/mruby-string-ext/test/string.rb +4 -0
- data/modules/mruby/mrbgems/mruby-struct/src/struct.c +1 -1
- data/modules/mruby/mrbgems/mruby-symbol-ext/mrblib/symbol.rb +51 -0
- data/modules/mruby/mrbgems/mruby-symbol-ext/test/symbol.rb +22 -0
- data/modules/mruby/mrbgems/mruby-time/src/time.c +38 -60
- data/modules/mruby/mrblib/class.rb +2 -2
- data/modules/mruby/src/backtrace.c +96 -23
- data/modules/mruby/src/class.c +43 -41
- data/modules/mruby/src/codegen.c +52 -46
- data/modules/mruby/src/debug.c +214 -0
- data/modules/mruby/src/dump.c +245 -17
- data/modules/mruby/src/error.c +14 -6
- data/modules/mruby/src/etc.c +17 -10
- data/modules/mruby/src/gc.c +9 -9
- data/modules/mruby/src/kernel.c +1 -1
- data/modules/mruby/src/load.c +137 -1
- data/modules/mruby/src/object.c +1 -1
- data/modules/mruby/src/parse.y +162 -37
- data/modules/mruby/src/state.c +2 -0
- data/modules/mruby/src/string.c +28 -19
- data/modules/mruby/src/symbol.c +0 -1
- data/modules/mruby/src/variable.c +12 -15
- data/modules/mruby/src/vm.c +38 -22
- data/modules/mruby/tasks/mrbgem_spec.rake +6 -4
- data/modules/mruby/tasks/mrbgems_test.rake +9 -9
- data/modules/mruby/tasks/mruby_build_gem.rake +9 -0
- data/modules/mruby/tasks/toolchains/androideabi.rake +2 -0
- data/modules/mruby/test/driver.c +3 -3
- data/modules/mruby/test/t/array.rb +13 -0
- data/modules/mruby/test/t/class.rb +28 -0
- data/modules/mruby/test/t/exception.rb +10 -0
- data/modules/mruby/test/t/literals.rb +50 -0
- data/modules/mruby/test/t/module.rb +22 -0
- data/modules/mruby/test/t/proc.rb +37 -0
- data/modules/mruby/test/t/string.rb +20 -21
- data/modules/mruby/tools/mrbc/mrbc.c +2 -4
- data/scripts/gen_post.rb +1 -0
- data/scripts/gen_require.rb +107 -0
- data/templates/minimal/Rakefile +20 -0
- metadata +210 -88
- data/driver/main.c +0 -40
- data/modules/emscripten/cmake/Platform/Emscripten_unix.cmake +0 -24
- data/modules/emscripten/emlibtool +0 -11
- data/modules/emscripten/emlibtool.bat +0 -2
- data/modules/emscripten/src/framework.js +0 -257
- data/modules/emscripten/system/include/bsd/float.h +0 -91
- data/modules/emscripten/system/include/bsd/readme.txt +0 -2
- data/modules/emscripten/system/include/bsd/sys/mman.h +0 -180
- data/modules/emscripten/system/include/bsd/sys/utsname.h +0 -70
- data/modules/emscripten/system/include/dlfcn.h +0 -31
- data/modules/emscripten/system/include/err.h +0 -95
- data/modules/emscripten/system/include/features.h +0 -3
- data/modules/emscripten/system/include/libc/_ansi.h +0 -135
- data/modules/emscripten/system/include/libc/_syslist.h +0 -40
- data/modules/emscripten/system/include/libc/argz.h +0 -33
- data/modules/emscripten/system/include/libc/envlock.h +0 -15
- data/modules/emscripten/system/include/libc/envz.h +0 -16
- data/modules/emscripten/system/include/libc/fastmath.h +0 -13
- data/modules/emscripten/system/include/libc/ieeefp.h +0 -256
- data/modules/emscripten/system/include/libc/machine/_default_types.h +0 -121
- data/modules/emscripten/system/include/libc/machine/_types.h +0 -8
- data/modules/emscripten/system/include/libc/machine/ansi.h +0 -1
- data/modules/emscripten/system/include/libc/machine/endian.h +0 -31
- data/modules/emscripten/system/include/libc/machine/fastmath.h +0 -100
- data/modules/emscripten/system/include/libc/machine/ieeefp.h +0 -376
- data/modules/emscripten/system/include/libc/machine/malloc.h +0 -8
- data/modules/emscripten/system/include/libc/machine/param.h +0 -1
- data/modules/emscripten/system/include/libc/machine/setjmp-dj.h +0 -43
- data/modules/emscripten/system/include/libc/machine/setjmp.h +0 -361
- data/modules/emscripten/system/include/libc/machine/stdlib.h +0 -8
- data/modules/emscripten/system/include/libc/machine/termios.h +0 -1
- data/modules/emscripten/system/include/libc/machine/time.h +0 -19
- data/modules/emscripten/system/include/libc/machine/types.h +0 -30
- data/modules/emscripten/system/include/libc/newlib.h +0 -2
- data/modules/emscripten/system/include/libc/process.h +0 -44
- data/modules/emscripten/system/include/libc/reent.h +0 -183
- data/modules/emscripten/system/include/libc/regdef.h +0 -7
- data/modules/emscripten/system/include/libc/sys/_default_fcntl.h +0 -223
- data/modules/emscripten/system/include/libc/sys/_types.h +0 -93
- data/modules/emscripten/system/include/libc/sys/cdefs.h +0 -123
- data/modules/emscripten/system/include/libc/sys/config.h +0 -255
- data/modules/emscripten/system/include/libc/sys/custom_file.h +0 -2
- data/modules/emscripten/system/include/libc/sys/dirent.h +0 -58
- data/modules/emscripten/system/include/libc/sys/features.h +0 -212
- data/modules/emscripten/system/include/libc/sys/iconvnls.h +0 -77
- data/modules/emscripten/system/include/libc/sys/lock.h +0 -24
- data/modules/emscripten/system/include/libc/sys/queue.h +0 -471
- data/modules/emscripten/system/include/libc/sys/reent.h +0 -843
- data/modules/emscripten/system/include/libc/sys/sched.h +0 -67
- data/modules/emscripten/system/include/libc/sys/stdio.h +0 -27
- data/modules/emscripten/system/include/libc/sys/string.h +0 -2
- data/modules/emscripten/system/include/libc/sys/syslimits.h +0 -65
- data/modules/emscripten/system/include/libc/sys/unistd.h +0 -514
- data/modules/emscripten/system/include/libc/sys/utime.h +0 -26
- data/modules/emscripten/system/include/libc/unctrl.h +0 -46
- data/modules/emscripten/system/include/memory.h +0 -10
- data/modules/emscripten/system/include/mntent.h +0 -23
- data/modules/emscripten/system/include/net/arpa/inet.h +0 -32
- data/modules/emscripten/system/include/net/arpa/nameser.h +0 -535
- data/modules/emscripten/system/include/net/arpa/nameser_compat.h +0 -187
- data/modules/emscripten/system/include/net/if.h +0 -106
- data/modules/emscripten/system/include/net/netinet/in.h +0 -230
- data/modules/emscripten/system/include/net/netinet/tcp.h +0 -246
- data/modules/emscripten/system/include/net/resolv.h +0 -389
- data/modules/emscripten/system/include/netdb.h +0 -130
- data/modules/emscripten/system/include/nl_types.h +0 -19
- data/modules/emscripten/system/include/poll.h +0 -3
- data/modules/emscripten/system/include/pty.h +0 -6
- data/modules/emscripten/system/include/semaphore.h +0 -31
- data/modules/emscripten/system/include/spawn.h +0 -105
- data/modules/emscripten/system/include/stdbool.h +0 -16
- data/modules/emscripten/system/include/sys/bitypes.h +0 -3
- data/modules/emscripten/system/include/sys/io.h +0 -14
- data/modules/emscripten/system/include/sys/ioctl.h +0 -78
- data/modules/emscripten/system/include/sys/poll.h +0 -31
- data/modules/emscripten/system/include/sys/select.h +0 -16
- data/modules/emscripten/system/include/sys/sendfile.h +0 -16
- data/modules/emscripten/system/include/sys/socket.h +0 -247
- data/modules/emscripten/system/include/sys/socketvar.h +0 -3
- data/modules/emscripten/system/include/sys/statvfs.h +0 -32
- data/modules/emscripten/system/include/sys/uio.h +0 -22
- data/modules/emscripten/system/include/sys/un.h +0 -66
- data/modules/emscripten/system/include/sysexits.h +0 -108
- data/modules/emscripten/system/include/xlocale.h +0 -47
@@ -1,694 +1,199 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
* All rights reserved.
|
4
|
-
*
|
5
|
-
* Redistribution and use in source and binary forms are permitted
|
6
|
-
* provided that the above copyright notice and this paragraph are
|
7
|
-
* duplicated in all such forms and that any documentation,
|
8
|
-
* advertising materials, and other materials related to such
|
9
|
-
* distribution and use acknowledge that the software was developed
|
10
|
-
* by the University of California, Berkeley. The name of the
|
11
|
-
* University may not be used to endorse or promote products derived
|
12
|
-
* from this software without specific prior written permission.
|
13
|
-
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
|
14
|
-
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
|
15
|
-
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
16
|
-
*
|
17
|
-
* @(#)stdio.h 5.3 (Berkeley) 3/15/86
|
18
|
-
*/
|
19
|
-
|
20
|
-
/*
|
21
|
-
* NB: to fit things in six character monocase externals, the
|
22
|
-
* stdio code uses the prefix `__s' for stdio objects, typically
|
23
|
-
* followed by a three-character attempt at a mnemonic.
|
24
|
-
*/
|
25
|
-
|
26
|
-
#ifndef _STDIO_H_
|
27
|
-
#define _STDIO_H_
|
28
|
-
|
29
|
-
#include "_ansi.h"
|
30
|
-
|
31
|
-
#define _FSTDIO /* ``function stdio'' */
|
32
|
-
|
33
|
-
#define __need_size_t
|
34
|
-
#include <stddef.h>
|
35
|
-
|
36
|
-
#define __need___va_list
|
37
|
-
#include <stdarg.h>
|
38
|
-
|
39
|
-
/*
|
40
|
-
* <sys/reent.h> defines __FILE, _fpos_t.
|
41
|
-
* They must be defined there because struct _reent needs them (and we don't
|
42
|
-
* want reent.h to include this file.
|
43
|
-
*/
|
44
|
-
|
45
|
-
#include <sys/reent.h>
|
46
|
-
#include <sys/types.h>
|
47
|
-
|
48
|
-
_BEGIN_STD_C
|
49
|
-
|
50
|
-
typedef __FILE FILE;
|
51
|
-
|
52
|
-
#ifdef __CYGWIN__
|
53
|
-
typedef _fpos64_t fpos_t;
|
54
|
-
#else
|
55
|
-
typedef _fpos_t fpos_t;
|
56
|
-
#ifdef __LARGE64_FILES
|
57
|
-
typedef _fpos64_t fpos64_t;
|
58
|
-
#endif
|
59
|
-
#endif /* !__CYGWIN__ */
|
60
|
-
|
61
|
-
#include <sys/stdio.h>
|
62
|
-
|
63
|
-
#define __SLBF 0x0001 /* line buffered */
|
64
|
-
#define __SNBF 0x0002 /* unbuffered */
|
65
|
-
#define __SRD 0x0004 /* OK to read */
|
66
|
-
#define __SWR 0x0008 /* OK to write */
|
67
|
-
/* RD and WR are never simultaneously asserted */
|
68
|
-
#define __SRW 0x0010 /* open for reading & writing */
|
69
|
-
#define __SEOF 0x0020 /* found EOF */
|
70
|
-
#define __SERR 0x0040 /* found error */
|
71
|
-
#define __SMBF 0x0080 /* _buf is from malloc */
|
72
|
-
#define __SAPP 0x0100 /* fdopen()ed in append mode - so must write to end */
|
73
|
-
#define __SSTR 0x0200 /* this is an sprintf/snprintf string */
|
74
|
-
#define __SOPT 0x0400 /* do fseek() optimisation */
|
75
|
-
#define __SNPT 0x0800 /* do not do fseek() optimisation */
|
76
|
-
#define __SOFF 0x1000 /* set iff _offset is in fact correct */
|
77
|
-
#define __SORD 0x2000 /* true => stream orientation (byte/wide) decided */
|
78
|
-
#if defined(__CYGWIN__)
|
79
|
-
# define __SCLE 0x4000 /* convert line endings CR/LF <-> NL */
|
80
|
-
#endif
|
81
|
-
#define __SL64 0x8000 /* is 64-bit offset large file */
|
82
|
-
|
83
|
-
/* _flags2 flags */
|
84
|
-
#define __SWID 0x2000 /* true => stream orientation wide, false => byte, only valid if __SORD in _flags is true */
|
85
|
-
|
86
|
-
/*
|
87
|
-
* The following three definitions are for ANSI C, which took them
|
88
|
-
* from System V, which stupidly took internal interface macros and
|
89
|
-
* made them official arguments to setvbuf(), without renaming them.
|
90
|
-
* Hence, these ugly _IOxxx names are *supposed* to appear in user code.
|
91
|
-
*
|
92
|
-
* Although these happen to match their counterparts above, the
|
93
|
-
* implementation does not rely on that (so these could be renumbered).
|
94
|
-
*/
|
95
|
-
#define _IOFBF 0 /* setvbuf should set fully buffered */
|
96
|
-
#define _IOLBF 1 /* setvbuf should set line buffered */
|
97
|
-
#define _IONBF 2 /* setvbuf should set unbuffered */
|
98
|
-
|
99
|
-
#ifndef NULL
|
100
|
-
#define NULL 0
|
101
|
-
#endif
|
102
|
-
|
103
|
-
#define EOF (-1)
|
104
|
-
|
105
|
-
#ifdef __BUFSIZ__
|
106
|
-
#define BUFSIZ __BUFSIZ__
|
107
|
-
#else
|
108
|
-
#define BUFSIZ 1024
|
109
|
-
#endif
|
1
|
+
#ifndef _STDIO_H
|
2
|
+
#define _STDIO_H
|
110
3
|
|
111
|
-
#ifdef
|
112
|
-
|
113
|
-
#else
|
114
|
-
#define FOPEN_MAX 20
|
4
|
+
#ifdef __cplusplus
|
5
|
+
extern "C" {
|
115
6
|
#endif
|
116
7
|
|
117
|
-
#
|
118
|
-
#define FILENAME_MAX __FILENAME_MAX__
|
119
|
-
#else
|
120
|
-
#define FILENAME_MAX 1024
|
121
|
-
#endif
|
8
|
+
#include <features.h>
|
122
9
|
|
123
|
-
#
|
124
|
-
#define
|
125
|
-
#
|
126
|
-
#define L_tmpnam FILENAME_MAX
|
127
|
-
#endif
|
128
|
-
|
129
|
-
#ifndef __STRICT_ANSI__
|
130
|
-
#define P_tmpdir "/tmp"
|
131
|
-
#endif
|
10
|
+
#define __NEED_FILE
|
11
|
+
#define __NEED___isoc_va_list
|
12
|
+
#define __NEED_size_t
|
132
13
|
|
133
|
-
#
|
134
|
-
|
135
|
-
|
136
|
-
#
|
137
|
-
#define
|
138
|
-
#
|
139
|
-
#ifndef SEEK_END
|
140
|
-
#define SEEK_END 2 /* set file offset to EOF plus offset */
|
14
|
+
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|
15
|
+
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|
16
|
+
|| defined(_BSD_SOURCE)
|
17
|
+
#define __NEED_ssize_t
|
18
|
+
#define __NEED_off_t
|
19
|
+
#define __NEED_va_list
|
141
20
|
#endif
|
142
21
|
|
143
|
-
#
|
144
|
-
|
145
|
-
#if 0 /* XXX Emscripten: do not use impure stuff for std*, it makes comparing to native builds harder */
|
146
|
-
#ifndef _REENT_ONLY
|
147
|
-
#define stdin (_REENT->_stdin)
|
148
|
-
#define stdout (_REENT->_stdout)
|
149
|
-
#define stderr (_REENT->_stderr)
|
150
|
-
#else /* _REENT_ONLY */
|
151
|
-
#define stdin (_impure_ptr->_stdin)
|
152
|
-
#define stdout (_impure_ptr->_stdout)
|
153
|
-
#define stderr (_impure_ptr->_stderr)
|
154
|
-
#endif /* _REENT_ONLY */
|
155
|
-
#else
|
156
|
-
extern FILE *stdin;
|
157
|
-
extern FILE *stdout;
|
158
|
-
extern FILE *stderr;
|
159
|
-
#define stdin stdin
|
160
|
-
#define stdout stdout
|
161
|
-
#define stderr stderr
|
162
|
-
#endif
|
22
|
+
#include <bits/alltypes.h>
|
163
23
|
|
164
|
-
#define
|
165
|
-
#define _stdout_r(x) ((x)->_stdout)
|
166
|
-
#define _stderr_r(x) ((x)->_stderr)
|
24
|
+
#define NULL 0L
|
167
25
|
|
168
|
-
|
169
|
-
|
170
|
-
*/
|
26
|
+
#undef EOF
|
27
|
+
#define EOF (-1)
|
171
28
|
|
172
|
-
#
|
173
|
-
#
|
174
|
-
#
|
175
|
-
#
|
176
|
-
#define
|
177
|
-
#
|
178
|
-
#endif
|
29
|
+
#undef SEEK_SET
|
30
|
+
#undef SEEK_CUR
|
31
|
+
#undef SEEK_END
|
32
|
+
#define SEEK_SET 0
|
33
|
+
#define SEEK_CUR 1
|
34
|
+
#define SEEK_END 2
|
179
35
|
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
char *
|
205
|
-
int
|
206
|
-
|
207
|
-
int
|
208
|
-
int
|
209
|
-
|
210
|
-
int
|
211
|
-
int
|
212
|
-
int
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
int
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
int
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
int
|
231
|
-
int
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
int
|
243
|
-
|
244
|
-
|
245
|
-
int
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
int
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
int
|
273
|
-
|
274
|
-
int
|
275
|
-
|
276
|
-
int
|
277
|
-
|
278
|
-
int
|
279
|
-
|
280
|
-
|
281
|
-
int
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
int
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
int
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
*
|
318
|
-
|
319
|
-
|
320
|
-
#
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
int
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
/*
|
341
|
-
* Routines in POSIX 1003.1:200x.
|
342
|
-
*/
|
343
|
-
|
344
|
-
#ifndef __STRICT_ANSI__
|
345
|
-
# ifndef _REENT_ONLY
|
346
|
-
# ifndef dprintf
|
347
|
-
int _EXFUN(dprintf, (int, const char *, ...)
|
348
|
-
_ATTRIBUTE (__format__ (__printf__, 2, 3)));
|
349
|
-
# endif
|
350
|
-
FILE * _EXFUN(fmemopen, (void *, size_t, const char *));
|
351
|
-
/* getdelim - see __getdelim for now */
|
352
|
-
/* getline - see __getline for now */
|
353
|
-
FILE * _EXFUN(open_memstream, (char **, size_t *));
|
354
|
-
#if defined (__CYGWIN__)
|
355
|
-
int _EXFUN(renameat, (int, const char *, int, const char *));
|
356
|
-
#endif
|
357
|
-
int _EXFUN(vdprintf, (int, const char *, __VALIST)
|
358
|
-
_ATTRIBUTE (__format__ (__printf__, 2, 0)));
|
359
|
-
# endif
|
360
|
-
#endif
|
361
|
-
|
362
|
-
/*
|
363
|
-
* Recursive versions of the above.
|
364
|
-
*/
|
365
|
-
|
366
|
-
int _EXFUN(_asiprintf_r, (struct _reent *, char **, const char *, ...)
|
367
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 4)));
|
368
|
-
char * _EXFUN(_asniprintf_r, (struct _reent *, char *, size_t *, const char *, ...)
|
369
|
-
_ATTRIBUTE (__format__ (__printf__, 4, 5)));
|
370
|
-
char * _EXFUN(_asnprintf_r, (struct _reent *, char *, size_t *, const char *, ...)
|
371
|
-
_ATTRIBUTE (__format__ (__printf__, 4, 5)));
|
372
|
-
int _EXFUN(_asprintf_r, (struct _reent *, char **, const char *, ...)
|
373
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 4)));
|
374
|
-
int _EXFUN(_diprintf_r, (struct _reent *, int, const char *, ...)
|
375
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 4)));
|
376
|
-
int _EXFUN(_dprintf_r, (struct _reent *, int, const char *, ...)
|
377
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 4)));
|
378
|
-
int _EXFUN(_fclose_r, (struct _reent *, FILE *));
|
379
|
-
int _EXFUN(_fcloseall_r, (struct _reent *));
|
380
|
-
FILE * _EXFUN(_fdopen_r, (struct _reent *, int, const char *));
|
381
|
-
int _EXFUN(_fflush_r, (struct _reent *, FILE *));
|
382
|
-
int _EXFUN(_fgetc_r, (struct _reent *, FILE *));
|
383
|
-
char * _EXFUN(_fgets_r, (struct _reent *, char *, int, FILE *));
|
384
|
-
#ifdef _COMPILING_NEWLIB
|
385
|
-
int _EXFUN(_fgetpos_r, (struct _reent *, FILE *, _fpos_t *));
|
386
|
-
int _EXFUN(_fsetpos_r, (struct _reent *, FILE *, const _fpos_t *));
|
387
|
-
#else
|
388
|
-
int _EXFUN(_fgetpos_r, (struct _reent *, FILE *, fpos_t *));
|
389
|
-
int _EXFUN(_fsetpos_r, (struct _reent *, FILE *, const fpos_t *));
|
390
|
-
#endif
|
391
|
-
int _EXFUN(_fiprintf_r, (struct _reent *, FILE *, const char *, ...)
|
392
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 4)));
|
393
|
-
int _EXFUN(_fiscanf_r, (struct _reent *, FILE *, const char *, ...)
|
394
|
-
_ATTRIBUTE (__format__ (__scanf__, 3, 4)));
|
395
|
-
FILE * _EXFUN(_fmemopen_r, (struct _reent *, void *, size_t, const char *));
|
396
|
-
FILE * _EXFUN(_fopen_r, (struct _reent *, const char *, const char *));
|
397
|
-
FILE * _EXFUN(_freopen_r, (struct _reent *, const char *, const char *, FILE *));
|
398
|
-
int _EXFUN(_fprintf_r, (struct _reent *, FILE *, const char *, ...)
|
399
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 4)));
|
400
|
-
int _EXFUN(_fpurge_r, (struct _reent *, FILE *));
|
401
|
-
int _EXFUN(_fputc_r, (struct _reent *, int, FILE *));
|
402
|
-
int _EXFUN(_fputs_r, (struct _reent *, const char *, FILE *));
|
403
|
-
size_t _EXFUN(_fread_r, (struct _reent *, _PTR, size_t _size, size_t _n, FILE *));
|
404
|
-
int _EXFUN(_fscanf_r, (struct _reent *, FILE *, const char *, ...)
|
405
|
-
_ATTRIBUTE (__format__ (__scanf__, 3, 4)));
|
406
|
-
int _EXFUN(_fseek_r, (struct _reent *, FILE *, long, int));
|
407
|
-
int _EXFUN(_fseeko_r,(struct _reent *, FILE *, _off_t, int));
|
408
|
-
long _EXFUN(_ftell_r, (struct _reent *, FILE *));
|
409
|
-
_off_t _EXFUN(_ftello_r,(struct _reent *, FILE *));
|
410
|
-
void _EXFUN(_rewind_r, (struct _reent *, FILE *));
|
411
|
-
size_t _EXFUN(_fwrite_r, (struct _reent *, const _PTR , size_t _size, size_t _n, FILE *));
|
412
|
-
int _EXFUN(_getc_r, (struct _reent *, FILE *));
|
413
|
-
int _EXFUN(_getc_unlocked_r, (struct _reent *, FILE *));
|
414
|
-
int _EXFUN(_getchar_r, (struct _reent *));
|
415
|
-
int _EXFUN(_getchar_unlocked_r, (struct _reent *));
|
416
|
-
char * _EXFUN(_gets_r, (struct _reent *, char *));
|
417
|
-
int _EXFUN(_iprintf_r, (struct _reent *, const char *, ...)
|
418
|
-
_ATTRIBUTE (__format__ (__printf__, 2, 3)));
|
419
|
-
int _EXFUN(_iscanf_r, (struct _reent *, const char *, ...)
|
420
|
-
_ATTRIBUTE (__format__ (__scanf__, 2, 3)));
|
421
|
-
FILE * _EXFUN(_open_memstream_r, (struct _reent *, char **, size_t *));
|
422
|
-
void _EXFUN(_perror_r, (struct _reent *, const char *));
|
423
|
-
int _EXFUN(_printf_r, (struct _reent *, const char *, ...)
|
424
|
-
_ATTRIBUTE (__format__ (__printf__, 2, 3)));
|
425
|
-
int _EXFUN(_putc_r, (struct _reent *, int, FILE *));
|
426
|
-
int _EXFUN(_putc_unlocked_r, (struct _reent *, int, FILE *));
|
427
|
-
int _EXFUN(_putchar_unlocked_r, (struct _reent *, int));
|
428
|
-
int _EXFUN(_putchar_r, (struct _reent *, int));
|
429
|
-
int _EXFUN(_puts_r, (struct _reent *, const char *));
|
430
|
-
int _EXFUN(_remove_r, (struct _reent *, const char *));
|
431
|
-
int _EXFUN(_rename_r, (struct _reent *,
|
432
|
-
const char *_old, const char *_new));
|
433
|
-
int _EXFUN(_scanf_r, (struct _reent *, const char *, ...)
|
434
|
-
_ATTRIBUTE (__format__ (__scanf__, 2, 3)));
|
435
|
-
int _EXFUN(_siprintf_r, (struct _reent *, char *, const char *, ...)
|
436
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 4)));
|
437
|
-
int _EXFUN(_siscanf_r, (struct _reent *, const char *, const char *, ...)
|
438
|
-
_ATTRIBUTE (__format__ (__scanf__, 3, 4)));
|
439
|
-
int _EXFUN(_sniprintf_r, (struct _reent *, char *, size_t, const char *, ...)
|
440
|
-
_ATTRIBUTE (__format__ (__printf__, 4, 5)));
|
441
|
-
int _EXFUN(_snprintf_r, (struct _reent *, char *, size_t, const char *, ...)
|
442
|
-
_ATTRIBUTE (__format__ (__printf__, 4, 5)));
|
443
|
-
int _EXFUN(_sprintf_r, (struct _reent *, char *, const char *, ...)
|
444
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 4)));
|
445
|
-
int _EXFUN(_sscanf_r, (struct _reent *, const char *, const char *, ...)
|
446
|
-
_ATTRIBUTE (__format__ (__scanf__, 3, 4)));
|
447
|
-
char * _EXFUN(_tempnam_r, (struct _reent *, const char *, const char *));
|
448
|
-
FILE * _EXFUN(_tmpfile_r, (struct _reent *));
|
449
|
-
char * _EXFUN(_tmpnam_r, (struct _reent *, char *));
|
450
|
-
int _EXFUN(_ungetc_r, (struct _reent *, int, FILE *));
|
451
|
-
int _EXFUN(_vasiprintf_r, (struct _reent *, char **, const char *, __VALIST)
|
452
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 0)));
|
453
|
-
char * _EXFUN(_vasniprintf_r, (struct _reent*, char *, size_t *, const char *, __VALIST)
|
454
|
-
_ATTRIBUTE (__format__ (__printf__, 4, 0)));
|
455
|
-
char * _EXFUN(_vasnprintf_r, (struct _reent*, char *, size_t *, const char *, __VALIST)
|
456
|
-
_ATTRIBUTE (__format__ (__printf__, 4, 0)));
|
457
|
-
int _EXFUN(_vasprintf_r, (struct _reent *, char **, const char *, __VALIST)
|
458
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 0)));
|
459
|
-
int _EXFUN(_vdiprintf_r, (struct _reent *, int, const char *, __VALIST)
|
460
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 0)));
|
461
|
-
int _EXFUN(_vdprintf_r, (struct _reent *, int, const char *, __VALIST)
|
462
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 0)));
|
463
|
-
int _EXFUN(_vfiprintf_r, (struct _reent *, FILE *, const char *, __VALIST)
|
464
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 0)));
|
465
|
-
int _EXFUN(_vfiscanf_r, (struct _reent *, FILE *, const char *, __VALIST)
|
466
|
-
_ATTRIBUTE (__format__ (__scanf__, 3, 0)));
|
467
|
-
int _EXFUN(_vfprintf_r, (struct _reent *, FILE *, const char *, __VALIST)
|
468
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 0)));
|
469
|
-
int _EXFUN(_vfscanf_r, (struct _reent *, FILE *, const char *, __VALIST)
|
470
|
-
_ATTRIBUTE (__format__ (__scanf__, 3, 0)));
|
471
|
-
int _EXFUN(_viprintf_r, (struct _reent *, const char *, __VALIST)
|
472
|
-
_ATTRIBUTE (__format__ (__printf__, 2, 0)));
|
473
|
-
int _EXFUN(_viscanf_r, (struct _reent *, const char *, __VALIST)
|
474
|
-
_ATTRIBUTE (__format__ (__scanf__, 2, 0)));
|
475
|
-
int _EXFUN(_vprintf_r, (struct _reent *, const char *, __VALIST)
|
476
|
-
_ATTRIBUTE (__format__ (__printf__, 2, 0)));
|
477
|
-
int _EXFUN(_vscanf_r, (struct _reent *, const char *, __VALIST)
|
478
|
-
_ATTRIBUTE (__format__ (__scanf__, 2, 0)));
|
479
|
-
int _EXFUN(_vsiprintf_r, (struct _reent *, char *, const char *, __VALIST)
|
480
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 0)));
|
481
|
-
int _EXFUN(_vsiscanf_r, (struct _reent *, const char *, const char *, __VALIST)
|
482
|
-
_ATTRIBUTE (__format__ (__scanf__, 3, 0)));
|
483
|
-
int _EXFUN(_vsniprintf_r, (struct _reent *, char *, size_t, const char *, __VALIST)
|
484
|
-
_ATTRIBUTE (__format__ (__printf__, 4, 0)));
|
485
|
-
int _EXFUN(_vsnprintf_r, (struct _reent *, char *, size_t, const char *, __VALIST)
|
486
|
-
_ATTRIBUTE (__format__ (__printf__, 4, 0)));
|
487
|
-
int _EXFUN(_vsprintf_r, (struct _reent *, char *, const char *, __VALIST)
|
488
|
-
_ATTRIBUTE (__format__ (__printf__, 3, 0)));
|
489
|
-
int _EXFUN(_vsscanf_r, (struct _reent *, const char *, const char *, __VALIST)
|
490
|
-
_ATTRIBUTE (__format__ (__scanf__, 3, 0)));
|
491
|
-
|
492
|
-
/* Other extensions. */
|
493
|
-
|
494
|
-
int _EXFUN(fpurge, (FILE *));
|
495
|
-
ssize_t _EXFUN(__getdelim, (char **, size_t *, int, FILE *));
|
496
|
-
ssize_t _EXFUN(__getline, (char **, size_t *, FILE *));
|
497
|
-
|
498
|
-
#ifdef __LARGE64_FILES
|
499
|
-
#if !defined(__CYGWIN__) || defined(_COMPILING_NEWLIB)
|
500
|
-
FILE * _EXFUN(fdopen64, (int, const char *));
|
501
|
-
FILE * _EXFUN(fopen64, (const char *, const char *));
|
502
|
-
FILE * _EXFUN(freopen64, (_CONST char *, _CONST char *, FILE *));
|
503
|
-
_off64_t _EXFUN(ftello64, (FILE *));
|
504
|
-
_off64_t _EXFUN(fseeko64, (FILE *, _off64_t, int));
|
505
|
-
int _EXFUN(fgetpos64, (FILE *, _fpos64_t *));
|
506
|
-
int _EXFUN(fsetpos64, (FILE *, const _fpos64_t *));
|
507
|
-
FILE * _EXFUN(tmpfile64, (void));
|
508
|
-
|
509
|
-
FILE * _EXFUN(_fdopen64_r, (struct _reent *, int, const char *));
|
510
|
-
FILE * _EXFUN(_fopen64_r, (struct _reent *,const char *, const char *));
|
511
|
-
FILE * _EXFUN(_freopen64_r, (struct _reent *, _CONST char *, _CONST char *, FILE *));
|
512
|
-
_off64_t _EXFUN(_ftello64_r, (struct _reent *, FILE *));
|
513
|
-
_off64_t _EXFUN(_fseeko64_r, (struct _reent *, FILE *, _off64_t, int));
|
514
|
-
int _EXFUN(_fgetpos64_r, (struct _reent *, FILE *, _fpos64_t *));
|
515
|
-
int _EXFUN(_fsetpos64_r, (struct _reent *, FILE *, const _fpos64_t *));
|
516
|
-
FILE * _EXFUN(_tmpfile64_r, (struct _reent *));
|
517
|
-
#endif /* !__CYGWIN__ */
|
518
|
-
#endif /* __LARGE64_FILES */
|
519
|
-
|
520
|
-
/*
|
521
|
-
* Routines internal to the implementation.
|
522
|
-
*/
|
523
|
-
|
524
|
-
int _EXFUN(__srget_r, (struct _reent *, FILE *));
|
525
|
-
int _EXFUN(__swbuf_r, (struct _reent *, int, FILE *));
|
526
|
-
|
527
|
-
/*
|
528
|
-
* Stdio function-access interface.
|
529
|
-
*/
|
530
|
-
|
531
|
-
#ifndef __STRICT_ANSI__
|
532
|
-
# ifdef __LARGE64_FILES
|
533
|
-
FILE *_EXFUN(funopen,(const _PTR __cookie,
|
534
|
-
int (*__readfn)(_PTR __c, char *__buf, int __n),
|
535
|
-
int (*__writefn)(_PTR __c, const char *__buf, int __n),
|
536
|
-
_fpos64_t (*__seekfn)(_PTR __c, _fpos64_t __off, int __whence),
|
537
|
-
int (*__closefn)(_PTR __c)));
|
538
|
-
FILE *_EXFUN(_funopen_r,(struct _reent *, const _PTR __cookie,
|
539
|
-
int (*__readfn)(_PTR __c, char *__buf, int __n),
|
540
|
-
int (*__writefn)(_PTR __c, const char *__buf, int __n),
|
541
|
-
_fpos64_t (*__seekfn)(_PTR __c, _fpos64_t __off, int __whence),
|
542
|
-
int (*__closefn)(_PTR __c)));
|
543
|
-
# else
|
544
|
-
FILE *_EXFUN(funopen,(const _PTR __cookie,
|
545
|
-
int (*__readfn)(_PTR __cookie, char *__buf, int __n),
|
546
|
-
int (*__writefn)(_PTR __cookie, const char *__buf, int __n),
|
547
|
-
fpos_t (*__seekfn)(_PTR __cookie, fpos_t __off, int __whence),
|
548
|
-
int (*__closefn)(_PTR __cookie)));
|
549
|
-
FILE *_EXFUN(_funopen_r,(struct _reent *, const _PTR __cookie,
|
550
|
-
int (*__readfn)(_PTR __cookie, char *__buf, int __n),
|
551
|
-
int (*__writefn)(_PTR __cookie, const char *__buf, int __n),
|
552
|
-
fpos_t (*__seekfn)(_PTR __cookie, fpos_t __off, int __whence),
|
553
|
-
int (*__closefn)(_PTR __cookie)));
|
554
|
-
# endif /* !__LARGE64_FILES */
|
555
|
-
|
556
|
-
# define fropen(__cookie, __fn) funopen(__cookie, __fn, (int (*)())0, \
|
557
|
-
(fpos_t (*)())0, (int (*)())0)
|
558
|
-
# define fwopen(__cookie, __fn) funopen(__cookie, (int (*)())0, __fn, \
|
559
|
-
(fpos_t (*)())0, (int (*)())0)
|
560
|
-
|
561
|
-
typedef ssize_t cookie_read_function_t(void *__cookie, char *__buf, size_t __n);
|
562
|
-
typedef ssize_t cookie_write_function_t(void *__cookie, const char *__buf,
|
563
|
-
size_t __n);
|
564
|
-
# ifdef __LARGE64_FILES
|
565
|
-
typedef int cookie_seek_function_t(void *__cookie, _off64_t *__off,
|
566
|
-
int __whence);
|
567
|
-
# else
|
568
|
-
typedef int cookie_seek_function_t(void *__cookie, off_t *__off, int __whence);
|
569
|
-
# endif /* !__LARGE64_FILES */
|
570
|
-
typedef int cookie_close_function_t(void *__cookie);
|
571
|
-
typedef struct
|
572
|
-
{
|
573
|
-
/* These four struct member names are dictated by Linux; hopefully,
|
574
|
-
they don't conflict with any macros. */
|
575
|
-
cookie_read_function_t *read;
|
576
|
-
cookie_write_function_t *write;
|
577
|
-
cookie_seek_function_t *seek;
|
578
|
-
cookie_close_function_t *close;
|
579
|
-
} cookie_io_functions_t;
|
580
|
-
FILE *_EXFUN(fopencookie,(void *__cookie,
|
581
|
-
const char *__mode, cookie_io_functions_t __functions));
|
582
|
-
FILE *_EXFUN(_fopencookie_r,(struct _reent *, void *__cookie,
|
583
|
-
const char *__mode, cookie_io_functions_t __functions));
|
584
|
-
#endif /* ! __STRICT_ANSI__ */
|
585
|
-
|
586
|
-
#ifndef __CUSTOM_FILE_IO__
|
587
|
-
/*
|
588
|
-
* The __sfoo macros are here so that we can
|
589
|
-
* define function versions in the C library.
|
590
|
-
*/
|
591
|
-
#define __sgetc_raw_r(__ptr, __f) (--(__f)->_r < 0 ? __srget_r(__ptr, __f) : (int)(*(__f)->_p++))
|
592
|
-
|
593
|
-
#ifdef __SCLE
|
594
|
-
/* For a platform with CR/LF, additional logic is required by
|
595
|
-
__sgetc_r which would otherwise simply be a macro; therefore we
|
596
|
-
use an inlined function. The function is only meant to be inlined
|
597
|
-
in place as used and the function body should never be emitted.
|
598
|
-
|
599
|
-
There are two possible means to this end when compiling with GCC,
|
600
|
-
one when compiling with a standard C99 compiler, and for other
|
601
|
-
compilers we're just stuck. At the moment, this issue only
|
602
|
-
affects the Cygwin target, so we'll most likely be using GCC. */
|
603
|
-
|
604
|
-
_ELIDABLE_INLINE int __sgetc_r(struct _reent *__ptr, FILE *__p);
|
605
|
-
|
606
|
-
_ELIDABLE_INLINE int __sgetc_r(struct _reent *__ptr, FILE *__p)
|
607
|
-
{
|
608
|
-
int __c = __sgetc_raw_r(__ptr, __p);
|
609
|
-
if ((__p->_flags & __SCLE) && (__c == '\r'))
|
610
|
-
{
|
611
|
-
int __c2 = __sgetc_raw_r(__ptr, __p);
|
612
|
-
if (__c2 == '\n')
|
613
|
-
__c = __c2;
|
614
|
-
else
|
615
|
-
ungetc(__c2, __p);
|
616
|
-
}
|
617
|
-
return __c;
|
618
|
-
}
|
619
|
-
#else
|
620
|
-
#define __sgetc_r(__ptr, __p) __sgetc_raw_r(__ptr, __p)
|
621
|
-
#endif
|
622
|
-
|
623
|
-
#ifdef _never /* __GNUC__ */
|
624
|
-
/* If this inline is actually used, then systems using coff debugging
|
625
|
-
info get hopelessly confused. 21sept93 rich@cygnus.com. */
|
626
|
-
_ELIDABLE_INLINE int __sputc_r(struct _reent *_ptr, int _c, FILE *_p) {
|
627
|
-
if (--_p->_w >= 0 || (_p->_w >= _p->_lbfsize && (char)_c != '\n'))
|
628
|
-
return (*_p->_p++ = _c);
|
629
|
-
else
|
630
|
-
return (__swbuf_r(_ptr, _c, _p));
|
36
|
+
#define _IOFBF 0
|
37
|
+
#define _IOLBF 1
|
38
|
+
#define _IONBF 2
|
39
|
+
|
40
|
+
#define BUFSIZ 1024
|
41
|
+
#define FILENAME_MAX 4096
|
42
|
+
#define FOPEN_MAX 1000
|
43
|
+
#define TMP_MAX 10000
|
44
|
+
#define L_tmpnam 20
|
45
|
+
|
46
|
+
typedef union _G_fpos64_t {
|
47
|
+
char __opaque[16];
|
48
|
+
double __align;
|
49
|
+
} fpos_t;
|
50
|
+
|
51
|
+
extern FILE *const stdin;
|
52
|
+
extern FILE *const stdout;
|
53
|
+
extern FILE *const stderr;
|
54
|
+
|
55
|
+
#define stdin (stdin)
|
56
|
+
#define stdout (stdout)
|
57
|
+
#define stderr (stderr)
|
58
|
+
|
59
|
+
FILE *fopen(const char *__restrict, const char *__restrict);
|
60
|
+
FILE *freopen(const char *__restrict, const char *__restrict, FILE *__restrict);
|
61
|
+
int fclose(FILE *);
|
62
|
+
|
63
|
+
int remove(const char *);
|
64
|
+
int rename(const char *, const char *);
|
65
|
+
|
66
|
+
int feof(FILE *);
|
67
|
+
int ferror(FILE *);
|
68
|
+
int fflush(FILE *);
|
69
|
+
void clearerr(FILE *);
|
70
|
+
|
71
|
+
int fseek(FILE *, long, int);
|
72
|
+
long ftell(FILE *);
|
73
|
+
void rewind(FILE *);
|
74
|
+
|
75
|
+
int fgetpos(FILE *__restrict, fpos_t *__restrict);
|
76
|
+
int fsetpos(FILE *, const fpos_t *);
|
77
|
+
|
78
|
+
size_t fread(void *__restrict, size_t, size_t, FILE *__restrict);
|
79
|
+
size_t fwrite(const void *__restrict, size_t, size_t, FILE *__restrict);
|
80
|
+
|
81
|
+
int fgetc(FILE *);
|
82
|
+
int getc(FILE *);
|
83
|
+
int getchar(void);
|
84
|
+
int ungetc(int, FILE *);
|
85
|
+
|
86
|
+
int fputc(int, FILE *);
|
87
|
+
int putc(int, FILE *);
|
88
|
+
int putchar(int);
|
89
|
+
|
90
|
+
char *fgets(char *__restrict, int, FILE *__restrict);
|
91
|
+
#if __STDC_VERSION__ < 201112L
|
92
|
+
char *gets(char *);
|
93
|
+
#endif
|
94
|
+
|
95
|
+
int fputs(const char *__restrict, FILE *__restrict);
|
96
|
+
int puts(const char *);
|
97
|
+
|
98
|
+
int printf(const char *__restrict, ...);
|
99
|
+
int fprintf(FILE *__restrict, const char *__restrict, ...);
|
100
|
+
int sprintf(char *__restrict, const char *__restrict, ...);
|
101
|
+
int snprintf(char *__restrict, size_t, const char *__restrict, ...);
|
102
|
+
|
103
|
+
int vprintf(const char *__restrict, __isoc_va_list);
|
104
|
+
int vfprintf(FILE *__restrict, const char *__restrict, __isoc_va_list);
|
105
|
+
int vsprintf(char *__restrict, const char *__restrict, __isoc_va_list);
|
106
|
+
int vsnprintf(char *__restrict, size_t, const char *__restrict, __isoc_va_list);
|
107
|
+
|
108
|
+
int scanf(const char *__restrict, ...);
|
109
|
+
int fscanf(FILE *__restrict, const char *__restrict, ...);
|
110
|
+
int sscanf(const char *__restrict, const char *__restrict, ...);
|
111
|
+
int vscanf(const char *__restrict, __isoc_va_list);
|
112
|
+
int vfscanf(FILE *__restrict, const char *__restrict, __isoc_va_list);
|
113
|
+
int vsscanf(const char *__restrict, const char *__restrict, __isoc_va_list);
|
114
|
+
|
115
|
+
void perror(const char *);
|
116
|
+
|
117
|
+
int setvbuf(FILE *__restrict, char *__restrict, int, size_t);
|
118
|
+
void setbuf(FILE *__restrict, char *__restrict);
|
119
|
+
|
120
|
+
char *tmpnam(char *);
|
121
|
+
FILE *tmpfile(void);
|
122
|
+
|
123
|
+
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|
124
|
+
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|
125
|
+
|| defined(_BSD_SOURCE)
|
126
|
+
FILE *fmemopen(void *__restrict, size_t, const char *__restrict);
|
127
|
+
FILE *open_memstream(char **, size_t *);
|
128
|
+
FILE *fdopen(int, const char *);
|
129
|
+
FILE *popen(const char *, const char *);
|
130
|
+
int pclose(FILE *);
|
131
|
+
int fileno(FILE *);
|
132
|
+
int fseeko(FILE *, off_t, int);
|
133
|
+
off_t ftello(FILE *);
|
134
|
+
int dprintf(int, const char *__restrict, ...);
|
135
|
+
int vdprintf(int, const char *__restrict, __isoc_va_list);
|
136
|
+
void flockfile(FILE *);
|
137
|
+
int ftrylockfile(FILE *);
|
138
|
+
void funlockfile(FILE *);
|
139
|
+
int getc_unlocked(FILE *);
|
140
|
+
int getchar_unlocked(void);
|
141
|
+
int putc_unlocked(int, FILE *);
|
142
|
+
int putchar_unlocked(int);
|
143
|
+
ssize_t getdelim(char **__restrict, size_t *__restrict, int, FILE *__restrict);
|
144
|
+
ssize_t getline(char **__restrict, size_t *__restrict, FILE *__restrict);
|
145
|
+
int renameat(int, const char *, int, const char *);
|
146
|
+
char *ctermid(char *);
|
147
|
+
#define L_ctermid 20
|
148
|
+
#endif
|
149
|
+
|
150
|
+
|
151
|
+
#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|
152
|
+
|| defined(_BSD_SOURCE)
|
153
|
+
#define P_tmpdir "/tmp"
|
154
|
+
char *tempnam(const char *, const char *);
|
155
|
+
#endif
|
156
|
+
|
157
|
+
#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
|
158
|
+
#define L_cuserid 20
|
159
|
+
char *cuserid(char *);
|
160
|
+
void setlinebuf(FILE *);
|
161
|
+
void setbuffer(FILE *, char *, size_t);
|
162
|
+
int fgetc_unlocked(FILE *);
|
163
|
+
int fputc_unlocked(int, FILE *);
|
164
|
+
int fflush_unlocked(FILE *);
|
165
|
+
size_t fread_unlocked(void *, size_t, size_t, FILE *);
|
166
|
+
size_t fwrite_unlocked(const void *, size_t, size_t, FILE *);
|
167
|
+
void clearerr_unlocked(FILE *);
|
168
|
+
int feof_unlocked(FILE *);
|
169
|
+
int ferror_unlocked(FILE *);
|
170
|
+
int fileno_unlocked(FILE *);
|
171
|
+
int getw(FILE *);
|
172
|
+
int putw(int, FILE *);
|
173
|
+
char *fgetln(FILE *, size_t *);
|
174
|
+
int asprintf(char **, const char *, ...);
|
175
|
+
int vasprintf(char **, const char *, __isoc_va_list);
|
176
|
+
#endif
|
177
|
+
|
178
|
+
#ifdef _GNU_SOURCE
|
179
|
+
char *fgets_unlocked(char *, int, FILE *);
|
180
|
+
int fputs_unlocked(const char *, FILE *);
|
181
|
+
#endif
|
182
|
+
|
183
|
+
#if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE)
|
184
|
+
#define tmpfile64 tmpfile
|
185
|
+
#define fopen64 fopen
|
186
|
+
#define freopen64 freopen
|
187
|
+
#define fseeko64 fseeko
|
188
|
+
#define ftello64 ftello
|
189
|
+
#define fgetpos64 fgetpos
|
190
|
+
#define fsetpos64 fsetpos
|
191
|
+
#define fpos64_t fpos_t
|
192
|
+
#define off64_t off_t
|
193
|
+
#endif
|
194
|
+
|
195
|
+
#ifdef __cplusplus
|
631
196
|
}
|
632
|
-
#else
|
633
|
-
/*
|
634
|
-
* This has been tuned to generate reasonable code on the vax using pcc
|
635
|
-
*/
|
636
|
-
#define __sputc_raw_r(__ptr, __c, __p) \
|
637
|
-
(--(__p)->_w < 0 ? \
|
638
|
-
(__p)->_w >= (__p)->_lbfsize ? \
|
639
|
-
(*(__p)->_p = (__c)), *(__p)->_p != '\n' ? \
|
640
|
-
(int)*(__p)->_p++ : \
|
641
|
-
__swbuf_r(__ptr, '\n', __p) : \
|
642
|
-
__swbuf_r(__ptr, (int)(__c), __p) : \
|
643
|
-
(*(__p)->_p = (__c), (int)*(__p)->_p++))
|
644
|
-
#ifdef __SCLE
|
645
|
-
#define __sputc_r(__ptr, __c, __p) \
|
646
|
-
((((__p)->_flags & __SCLE) && ((__c) == '\n')) \
|
647
|
-
? __sputc_raw_r(__ptr, '\r', (__p)) : 0 , \
|
648
|
-
__sputc_raw_r((__ptr), (__c), (__p)))
|
649
|
-
#else
|
650
|
-
#define __sputc_r(__ptr, __c, __p) __sputc_raw_r(__ptr, __c, __p)
|
651
197
|
#endif
|
652
|
-
#endif
|
653
|
-
|
654
|
-
#define __sfeof(p) (((p)->_flags & __SEOF) != 0)
|
655
|
-
#define __sferror(p) (((p)->_flags & __SERR) != 0)
|
656
|
-
#define __sclearerr(p) ((void)((p)->_flags &= ~(__SERR|__SEOF)))
|
657
|
-
#define __sfileno(p) ((p)->_file)
|
658
198
|
|
659
|
-
#if 0 /* XXX Emscripten ndef _REENT_SMALL */
|
660
|
-
#define feof(p) __sfeof(p)
|
661
|
-
#define ferror(p) __sferror(p)
|
662
|
-
#define clearerr(p) __sclearerr(p)
|
663
199
|
#endif
|
664
|
-
|
665
|
-
#if 0 /*ndef __STRICT_ANSI__ - FIXME: must initialize stdio first, use fn */
|
666
|
-
#define fileno(p) __sfileno(p)
|
667
|
-
#endif
|
668
|
-
|
669
|
-
#if !defined(__CYGWIN__) && !defined(EMSCRIPTEN)
|
670
|
-
#ifndef lint
|
671
|
-
#define getc(fp) __sgetc_r(_REENT, fp)
|
672
|
-
#define putc(x, fp) __sputc_r(_REENT, x, fp)
|
673
|
-
#endif /* lint */
|
674
|
-
#endif /* __CYGWIN__ */
|
675
|
-
|
676
|
-
#ifndef __STRICT_ANSI__
|
677
|
-
/* fast always-buffered version, true iff error */
|
678
|
-
#define fast_putc(x,p) (--(p)->_w < 0 ? \
|
679
|
-
__swbuf_r(_REENT, (int)(x), p) == EOF : (*(p)->_p = (x), (p)->_p++, 0))
|
680
|
-
|
681
|
-
#define L_cuserid 9 /* posix says it goes in stdio.h :( */
|
682
|
-
#if defined(__CYGWIN__) || defined(EMSCRIPTEN)
|
683
|
-
#define L_ctermid 16
|
684
|
-
#endif
|
685
|
-
#endif
|
686
|
-
|
687
|
-
#endif /* !__CUSTOM_FILE_IO__ */
|
688
|
-
|
689
|
-
#define getchar() getc(stdin)
|
690
|
-
#define putchar(x) putc(x, stdout)
|
691
|
-
|
692
|
-
_END_STD_C
|
693
|
-
|
694
|
-
#endif /* _STDIO_H_ */
|