- 所有 tcc 文件/内容/宏改名为 pcc (tcc.c->pcc.c, tccelf.c->pccelf.c, libtcc.c->libpcc.c 等) - 支持架构: i386, x86_64, ARM, ARM64, RISC-V, C67 - 支持格式: PE, ELF, Mach-O, COFF - 完整预处理、代码生成、链接器、调试信息 - 构建成功: pcc.exe (x86_64 Windows) - 功能测试通过: 递归/结构体/浮点/switch/循环 - 自编译测试通过: pcc 可以编译自身
92 行
2.1 KiB
C
92 行
2.1 KiB
C
/**
|
|
* This file has no copyright assigned and is placed in the Public Domain.
|
|
* This file is part of the w64 mingw-runtime package.
|
|
* No warranty is given; refer to the file DISCLAIMER within this package.
|
|
*/
|
|
#ifndef _INC_LOCALE
|
|
#define _INC_LOCALE
|
|
|
|
#include <_mingw.h>
|
|
|
|
#pragma pack(push,_CRT_PACKING)
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#ifndef NULL
|
|
#ifdef __cplusplus
|
|
#define NULL 0
|
|
#else
|
|
#define NULL ((void *)0)
|
|
#endif
|
|
#endif
|
|
|
|
#define LC_ALL 0
|
|
#define LC_COLLATE 1
|
|
#define LC_CTYPE 2
|
|
#define LC_MONETARY 3
|
|
#define LC_NUMERIC 4
|
|
#define LC_TIME 5
|
|
|
|
#define LC_MIN LC_ALL
|
|
#define LC_MAX LC_TIME
|
|
|
|
#ifndef _LCONV_DEFINED
|
|
#define _LCONV_DEFINED
|
|
struct lconv {
|
|
char *decimal_point;
|
|
char *thousands_sep;
|
|
char *grouping;
|
|
char *int_curr_symbol;
|
|
char *currency_symbol;
|
|
char *mon_decimal_point;
|
|
char *mon_thousands_sep;
|
|
char *mon_grouping;
|
|
char *positive_sign;
|
|
char *negative_sign;
|
|
char int_frac_digits;
|
|
char frac_digits;
|
|
char p_cs_precedes;
|
|
char p_sep_by_space;
|
|
char n_cs_precedes;
|
|
char n_sep_by_space;
|
|
char p_sign_posn;
|
|
char n_sign_posn;
|
|
};
|
|
#endif
|
|
|
|
#ifndef _CONFIG_LOCALE_SWT
|
|
#define _CONFIG_LOCALE_SWT
|
|
|
|
#define _ENABLE_PER_THREAD_LOCALE 0x1
|
|
#define _DISABLE_PER_THREAD_LOCALE 0x2
|
|
#define _ENABLE_PER_THREAD_LOCALE_GLOBAL 0x10
|
|
#define _DISABLE_PER_THREAD_LOCALE_GLOBAL 0x20
|
|
#define _ENABLE_PER_THREAD_LOCALE_NEW 0x100
|
|
#define _DISABLE_PER_THREAD_LOCALE_NEW 0x200
|
|
|
|
#endif
|
|
|
|
int __cdecl _configthreadlocale(int _Flag);
|
|
char *__cdecl setlocale(int _Category,const char *_Locale);
|
|
_CRTIMP struct lconv *__cdecl localeconv(void);
|
|
_locale_t __cdecl _get_current_locale(void);
|
|
_locale_t __cdecl _create_locale(int _Category,const char *_Locale);
|
|
void __cdecl _free_locale(_locale_t _Locale);
|
|
_locale_t __cdecl __get_current_locale(void);
|
|
_locale_t __cdecl __create_locale(int _Category,const char *_Locale);
|
|
void __cdecl __free_locale(_locale_t _Locale);
|
|
|
|
#ifndef _WLOCALE_DEFINED
|
|
#define _WLOCALE_DEFINED
|
|
_CRTIMP wchar_t *__cdecl _wsetlocale(int _Category,const wchar_t *_Locale);
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#pragma pack(pop)
|
|
#endif
|