⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cvars.h

📁 Open Watcom 的 C 编译器源代码
💻 H
📖 第 1 页 / 共 3 页
字号:
extern  int     EmitBytes(STR_HANDLE);
extern  void    EmitSym(SYMPTR,SYM_HANDLE);
extern  int     CGenType(TYPEPTR);
extern  void    GenInLineFunc( SYM_HANDLE sym_handle );
extern  bool    IsInLineFunc( SYM_HANDLE sym_handle );

extern  void    EmitDataQuads(void);            /* cgendata */
extern  void    EmitZeros(unsigned long);       /* cgendata */
extern  void    AlignIt(TYPEPTR);               /* cgendata */

extern  int     GetNextChar(void);              /* cgetch */
extern  int     GetCharCheck(int);              /* cgetch */
extern  int     getCharAfterBackSlash(void);    /* cgetch */
extern  void    GetNextCharUndo(int);           /* cgetch */
extern  void    CloseSrcFile(FCB *);            /* cgetch */

// cinfo.c
extern  void    SegInit(void);
extern  fe_attr FEAttr(CGSYM_HANDLE);
extern  back_handle FEBack(CGSYM_HANDLE);
extern  char    *FEName(CGSYM_HANDLE);
extern  int     FEParmType(CGSYM_HANDLE,CGSYM_HANDLE,int);
extern  segment_id FESegID(CGSYM_HANDLE);
extern  int     AddSegName(char *,char *,int);
extern  int     DefThreadSeg( void );
extern  void    EmitSegLabels(void);
extern  void    FiniSegLabels(void);
extern  void    FiniSegBacks(void);
extern  void    SetSegs(void);
extern  SYM_HANDLE SegSymHandle(int);
extern  void    SetFuncSegment(SYMPTR,int);
extern  void    SetFarHuge(SYMPTR,int);
extern  char    *SegClassName(unsigned);
extern  hw_reg_set *SegPeggedReg(unsigned);
extern  void    SetSegment(SYMPTR);
extern  void    SetSegAlign(SYMPTR);
extern  void    AssignSeg(SYMPTR);
// cintmain
extern void     ConsErrMsg( cmsg_info  *info );
extern void     ConsMsg( char const  *line );
extern void     BannerMsg( char const  *line );
extern void     DebugMsg( char const  *line );
extern void     NoteMsg( char const  *line );
extern void     ConBlip( void );
extern bool     ConTTY( void );
extern char    *FEGetEnv( char const  *name );
extern void     FESetCurInc( void );

//cmac1.c
extern  void    EnlargeBuffer(size_t);
extern  void    MacroInit(void);
extern  void    MacroAddComp(void);
extern  void    MacroFini(void);
extern  void    MacroPurge(void);
extern  void    GetMacroToken(void);
extern  int     SpecialMacro(MEPTR);
extern  void    DoMacroExpansion(void);
//cmac2.c
extern  int     ChkControl(void);
extern  bool    MacroDel( char *name );
extern  void    CppStackInit( void );
extern  void    CppStackFini(void);

//cmacadd.c
extern  void    AllocMacroSegment(unsigned);
extern  void    FreeMacroSegments(void);
extern  void    MacLkAdd( MEPTR mentry, int len, enum macro_flags flags );
extern  void    MacroAdd( MEPTR mentry, char *buf, int len, enum macro_flags flags );
extern  int     MacroCompare(MEPTR,MEPTR);
extern  void    MacroCopy(MPTR_T,MACADDR_T,unsigned);
extern  MEPTR   MacroLookup(const char *);
extern  void    MacroOverflow(unsigned,unsigned);
extern  SYM_HASHPTR SymHashAlloc(unsigned);

//cmath2.c
extern  TREEPTR AddOp(TREEPTR,TOKEN,TREEPTR);
extern   TREEPTR InitAsgn( TYPEPTR,TREEPTR );
extern  TREEPTR AsgnOp(TREEPTR,TOKEN,TREEPTR);
extern  TREEPTR BinOp(TREEPTR,TOKEN,TREEPTR);
extern  TREEPTR CnvOp(TREEPTR,TYPEPTR,int);
extern  TREEPTR FlowOp(TREEPTR,int,TREEPTR);
extern  TREEPTR IntOp(TREEPTR,TOKEN,TREEPTR);
extern  TREEPTR RelOp(TREEPTR,TOKEN,TREEPTR);
extern  TREEPTR ShiftOp(TREEPTR,TOKEN,TREEPTR);
extern  TYPEPTR TernType(TREEPTR,TREEPTR);
extern  TYPEPTR TypeOf(TREEPTR);
extern  TREEPTR UComplement(TREEPTR);
extern  TREEPTR UMinus(TREEPTR);
extern  DATA_TYPE DataTypeOf(DATA_TYPE);
extern  int     FuncPtr(TYPEPTR);
extern  TREEPTR ParmAss( TREEPTR opnd, TYPEPTR newtyp );
extern  pointer_class   ExprTypeClass( TYPEPTR typ );
extern  TREEPTR LCastAdj(  TREEPTR tree );

extern  void    CMemInit(void);                 /* cmemmgr */
extern  void    CMemFini(void);                 /* cmemmgr */
extern  void    *CPermAlloc(unsigned);          /* cmemmgr */
extern  void    *CMemAlloc(unsigned);           /* cmemmgr */
extern  void    *CMemRealloc( void *loc, unsigned size ); /* cmemmgr */
extern  void    CMemFree(void *);               /* cmemmgr */
extern  void    *FEmalloc(unsigned);            /* cmemmgr */
extern  void    FEfree(void *);                 /* cmemmgr */

extern  char    *BadCmdLine(int,char *);        /* cmodel */
extern  char    *Define_Macro(char *);          /* cmodel */
extern  char    *Define_UserMacro(char *);      /* cmodel */
extern  void    PreDefine_Macro(char *);        /* cmodel */
extern  char    *AddUndefName(char *);          /* cmodel */
extern  void    InitModInfo(void);              /* cmodel */
extern  void    MiscMacroDefs(void);            /* cmodel */
//cmsg.c
extern char const *CGetMsgStr(  msg_codes msgcode );
extern void CGetMsg( char *msgbuf, msg_codes msgnum );
extern void InitMsg( void );
extern void FiniMsg( void );
extern char const * UsageText(void);      // GET INTERNATIONAL USAGE TEXT
extern msgtype CGetMsgType( msg_codes msgcode );
char const *CGetMsgPrefix( msg_codes msgcode );

extern  int     NameCmp(const void *,const void *,int); /* cname */

extern  int     EqualChar(int);                 /* coptions */
extern  void    GenCOptions(char **);           /* coptions */
extern  void    MergeInclude(void);             /* coptions */

extern  void    CPragmaInit( void );            /* cpragma */
extern  int     SetToggleFlag( char const *name, int const value ); /* cpragma */
extern  void    CPragma(void);                  /* cpragma */
extern  struct textsegment *LkSegName(char *,char *);   /* cpragma */
extern  struct textsegment *NewTextSeg(char *,char *,char *);
extern  void    PragmaInit(void);               /* cpragma */
extern  void    PragmaFini(void);               /* cpragma */
extern  void    PragInit(void);                 /* cpragma */
extern  void    PragEnding(void);               /* cpragma */
extern  void    PragObjNameInfo(void);          /* cpragma */
extern  int     PragRecog(char *);              /* cpragma */
extern  hw_reg_set PragRegList(void);           /* cpragma */
extern  void    PragManyRegSets(void);          /* cpragma */
extern  void    PragCurrAlias(void);            /* cpragma */
extern  int     PragSet(void);                  /* cpragma */
extern  void    ChkPragmas(void);               /* cpragma */
extern  void    CreateAux(char *);              /* cpragma */
extern  void    SetCurrInfo(void);              /* cpragma */
extern  void    XferPragInfo(char*,char*);      /* cpragma */
extern  void    EnableDisableMessage(int,unsigned);/* cpragma */

extern  void    AsmStmt(void);                  /* cprag86 */
extern  void    PragAux(void);                  /* cprag86 */
extern  hw_reg_set PragRegName(char *);         /* cprag86 */

extern  void    InitPurge(void);                /* cpurge */
extern  void    PurgeMemory(void);              /* cpurge */

extern  void    ScanInit(void);                 /* cscan */
extern  int     InitPPScan(void);               /* cscan */
extern  void    FiniPPScan(int);                /* cscan */
extern  int     CalcHash(char *,int);           /* cscan */
extern  unsigned hashpjw(char *);               /* cscan */
extern  int     ESCChar(int,const char **,char *); /* cscan */
extern  void    SkipAhead(void);                /* cscan */
extern  int     ScanSlash(void);                /* cscan */
extern  int     ScanToken(void);                /* cscan */
extern  void    ReScanInit(char *);             /* cscan */
extern  int     ReScanBuffer(void);             /* cscan */
extern  int     ReScanToken(void);              /* cscan */
extern  char    *ReScanPos(void);               /* cscan */
extern  int     IdLookup(const char *);         /* cscan */
extern  int     KwLookup(const char *);         /* cscan */
extern  int     NextToken(void);                /* cscan */
extern  int     PPNextToken(void);              /* cscan */

extern  unsigned long SizeOfArg(TYPEPTR);       /* csizeof */

extern  void    InitStats(void);                /* cstats */
extern  void    PrintStats(void);               /* cstats */

extern  void    LookAhead(void);                /* cstmt */
extern  void    Statement(void);                /* cstmt */
extern  void    AddStmt(TREEPTR);               /* cstmt */
extern  void    GenFunctionNode(SYM_HANDLE);    /* cstmt */
extern  int     NextLabel(void);                /* cstmt */
extern  void    StmtInit( void );               /* cstmt */

extern  void    FreeLiteral(STRING_LITERAL *);  /* cstring */
extern  STRING_LITERAL  *GetLiteral(void);      /* cstring */
extern  void    LoadUnicodeTable(long);         /* cstring */
extern  void    StringInit(void);               /* cstring */
extern  TREEPTR StringLeaf(int);                /* cstring */

extern  void    SymInit(void);                  /* csym */
extern  void    SpcSymInit(void);               /* csym */
extern  void    SymFini(void);                  /* csym */
extern  void    SymCreate(SYMPTR,char *);       /* csym */
extern  SYM_HANDLE SegSymbol(char *);           /* csym */
extern  SYM_HANDLE SpcSymbol(char *,int);       /* csym */
extern  SYM_HANDLE SymAdd(int,SYMPTR);          /* csym */
extern  SYM_HANDLE SymAddL0(int,SYMPTR);        /* csym */
extern  SYM_HANDLE SymLook(int,char *);         /* csym */
extern  SYM_HANDLE Sym0Look(int,char *);        /* csym */
extern  SYM_HANDLE SymLookTypedef(int,char *,SYMPTR);   /* csym */
extern  void    SymGet(SYMPTR,SYM_HANDLE);      /* csym */
extern  SYMPTR  SymGetPtr(SYM_HANDLE);          /* csym */
extern  void    SymReplace(SYMPTR,SYM_HANDLE);  /* csym */
extern  void    EndBlock(void);                 /* csym */
extern  SYM_HANDLE MakeFunction(char *,TYPEPTR);/* csym */
extern  SYM_HANDLE MakeNewSym(SYMPTR,char,TYPEPTR,int); /* csym */
extern  LABELPTR LkLabel(char *);               /* csym */
extern  void    FreeLabels(void);               /* csym */
extern  XREFPTR NewXref(XREFPTR);               /* csym */
extern  void    FreeXrefs(XREFPTR);             /* csym */


extern  void    TimeInit(void);                 /* ctimepc */
//ctype.c
extern  void    CTypeInit(void);
extern  void    InitTypeHashTables(void);
extern  void    SetSignedChar(void);
extern  TYPEPTR DupType(TYPEPTR,type_modifiers,int);
extern  TYPEPTR GetType(DATA_TYPE);
extern  TYPEPTR ArrayNode(TYPEPTR);
extern  TYPEPTR FuncNode(TYPEPTR, int, TYPEPTR *);
extern  TYPEPTR TypeDefault(void);
extern  TYPEPTR PtrNode(TYPEPTR,int,int);
extern  TYPEPTR BPtrNode(TYPEPTR,int,int,SYM_HANDLE, BASED_KIND);
extern  TYPEPTR TypeNode(DATA_TYPE,TYPEPTR);
extern  int     TypeQualifier(void);
extern  void    TypeSpecifier( decl_info *info );
extern  void    FullDeclSpecifier( decl_info *info );
extern  TAGPTR  NullTag(void);
extern  TAGPTR  TagLookup(void);
extern  void    FreeTags(void);
extern  unsigned long TypeSize(TYPEPTR);
/* CarlYoung 31-Oct-03 */
extern  unsigned long TypeSizeEx(TYPEPTR, unsigned long * pFieldWidth);
extern  TAGPTR  VfyNewTag(TAGPTR,int);
extern  void    VfyNewSym(int,char *);
extern  unsigned GetTypeAlignment(TYPEPTR);
extern  void    TypesPurge(void);
extern  void    AddTypeHash(TYPEPTR);
extern  void    AddPtrTypeHash(TYPEPTR);

extern  void    CCusage(void);                  /* cusage */

extern  void    CErrSymName(int,SYMPTR,SYM_HANDLE);/* cutil */
extern  void    Expecting(char *);              /* cutil */
extern  void    ExpectingAfter(char *,char *);  /* cutil */
extern  void    ExpectConstant(void);           /* cutil */
extern  void    ExpectEndOfLine(void);          /* cutil */
extern  void    ExpectIdentifier(void);         /* cutil */
extern  void    ExpectString(void);             /* cutil */
extern  void    ExpectStructUnionTag();         /* cutil */
extern  void    MustRecog(TOKEN);               /* cutil */
extern  SYM_NAMEPTR SymName(SYMPTR,SYM_HANDLE); /* cutil */

extern  void    DwarfBrowseEmit(void);          /* dwarf */
extern  void    ftoa(double,char *);            /* ftoa */
extern  unsigned int JIS2Unicode(unsigned);     /* jis2unic */

// pchdr.c
extern  int     UsePreCompiledHeader(char *);
extern  void    InitBuildPreCompiledHeader( void );
extern  void    BuildPreCompiledHeader(char *);
extern  void    FreePreCompiledHeader( void );

extern  char    *CStrSave(char *);               /* strsave */
extern  unsigned char     _dos_switch_char(void);         /* swchar */
extern  void    CBanner(void);                  /* watcom */
extern  void    MyExit( int ret );              /* cintmain */

extern  void    DBSetSymLoc(CGSYM_HANDLE,long); /* dbsupp */

// cstmt2.c
extern  SYM_HANDLE GetBlockSymList( void );
extern  void    InitStmt( void );
extern  void    SwitchPurge( void );

#if _OS == _CMS || ! defined(__WATCOMC__)
    #define  __va_list  va_list
    #define  __puts     puts
    #define  __printf   printf
    #define  __vfprintf vfprintf
    #define  __fprintf  fprintf
    #define myexit  exit
    #define my_exit exit
#else
    extern  int     __puts(const char *__s);
    extern  int     __printf(const char *__format,...);
    extern  int     __vfprintf(FILE *__fp,const char *__format,__va_list __arg);
    extern  int     __fprintf(FILE *__fp,const char *__format,...);
#if _HOST == 386
    #pragma aux myexit aborts;
    #pragma aux my_exit aborts;
#endif
    extern  void    myexit( int );
    extern  void    my_exit( int );
#endif

#if _OS == _DOS || (_OS == _OS2 && !defined(__386__))
    #define _syserrno _doserrno
#else
    #define _syserrno errno
    #include <errno.h>
#endif

#ifndef min
    #define min( a, b )  ((a < b ) ? (a) : (b))
#endif

#ifndef max
    #define max( a, b )  ((a > b ) ? (a) : (b))
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -