cosmopolitan/third_party/sed/extern.h
Justine Tunney b8a6a989c0
Create ELF aliases for identical symbols
This change greatly reduces the number of modules that need to be
compiled. The only issue right now is that sometimes when viewing
symbol table entries, the aliased symbol is chosen.
2023-06-06 03:33:49 -07:00

37 lines
1.1 KiB
C

#ifndef COSMOPOLITAN_THIRD_PARTY_SED_EXTERN_H_
#define COSMOPOLITAN_THIRD_PARTY_SED_EXTERN_H_
#include "libc/calls/typedef/u.h"
#include "libc/stdio/stdio.h"
#include "third_party/regex/regex.h"
#include "third_party/sed/defs.h"
#if !(__ASSEMBLER__ + __LINKER__ + 0)
COSMOPOLITAN_C_START_
// clang-format off
extern struct s_command *prog;
extern struct s_appends *appends_;
extern regmatch_t *g_match;
extern size_t maxnsub;
extern u_long linenum;
extern size_t appendnum;
extern int aflag, eflag, nflag;
extern const char *fname, *outfname;
extern FILE *infile, *outfile;
extern int rflags; /* regex flags to use */
void cfclose(struct s_command *, struct s_command *);
void compile(void);
void cspace(SPACE *, const char *, size_t, enum e_spflag);
char *cu_fgets(char *, int, int *);
int mf_fgets(SPACE *, enum e_spflag);
int lastline(void);
void process(void);
void resetstate(void);
char *strregerror(int, regex_t *);
void *xmalloc(size_t);
void *xrealloc(void *, size_t);
void *xcalloc(size_t, size_t);
COSMOPOLITAN_C_END_
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
#endif /* COSMOPOLITAN_THIRD_PARTY_SED_EXTERN_H_ */