mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 10:04:49 +00:00
@implemented and @unimplemented comments for lib/crtdll/*
svn path=/trunk/; revision=5079
This commit is contained in:
parent
06a9aa1f74
commit
6d1c6531b5
318 changed files with 1427 additions and 55 deletions
|
@ -2,6 +2,9 @@
|
|||
#include <msvcrt/stdlib.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
char* _cgets(char *string)
|
||||
{
|
||||
unsigned len = 0;
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include <msvcrt/stdio.h>
|
||||
#include <msvcrt/conio.h>
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
int
|
||||
_cprintf(const char *fmt, ...)
|
||||
{
|
||||
|
|
|
@ -13,6 +13,9 @@
|
|||
#include <msvcrt/stdio.h>
|
||||
#include <msvcrt/internal/file.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _cputs(const char *_str)
|
||||
{
|
||||
int len = strlen(_str);
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
#include <msvcrt/stdio.h>
|
||||
#include <msvcrt/internal/stdio.h>
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
int _cscanf(char *fmt, ...)
|
||||
{
|
||||
int cnt;
|
||||
|
|
|
@ -14,6 +14,9 @@
|
|||
#include <msvcrt/internal/console.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _getch(void)
|
||||
{
|
||||
DWORD NumberOfCharsRead = 0;
|
||||
|
@ -35,6 +38,9 @@ int _getch(void)
|
|||
}
|
||||
|
||||
#if 0
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
int _getche(void)
|
||||
{
|
||||
int c;
|
||||
|
|
|
@ -15,6 +15,9 @@
|
|||
|
||||
// FIXME PeekCosoleInput returns more than keyboard hits
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
int _kbhit(void)
|
||||
{
|
||||
//INPUT_RECORD InputRecord;
|
||||
|
|
|
@ -10,6 +10,9 @@
|
|||
#include <windows.h>
|
||||
#include <msvcrt/conio.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _putch( int c )
|
||||
{
|
||||
DWORD NumberOfCharsWritten;
|
||||
|
|
|
@ -19,6 +19,9 @@ int char_avail = 0;
|
|||
int ungot_char = 0;
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ungetch(int c)
|
||||
{
|
||||
if (char_avail)
|
||||
|
|
|
@ -11,12 +11,18 @@
|
|||
|
||||
|
||||
#undef isalnum
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int isalnum(int c)
|
||||
{
|
||||
return _isctype(c, _ALPHA | _DIGIT);
|
||||
}
|
||||
|
||||
#undef iswalnum
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswalnum(wint_t c)
|
||||
{
|
||||
return iswctype(c, _ALPHA | _DIGIT);
|
||||
|
|
|
@ -13,12 +13,18 @@
|
|||
|
||||
#undef isalpha
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int isalpha(int c)
|
||||
{
|
||||
return _isctype(c, _ALPHA);
|
||||
}
|
||||
|
||||
#undef iswalpha
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswalpha(wint_t c)
|
||||
{
|
||||
return iswctype(c, _ALPHA);
|
||||
|
|
|
@ -10,11 +10,17 @@
|
|||
|
||||
#include <msvcrt/ctype.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int __isascii(int c)
|
||||
{
|
||||
return (!((c)&(~0x7f)));
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswascii(wint_t c)
|
||||
{
|
||||
return __isascii(c);
|
||||
|
|
|
@ -3,12 +3,18 @@
|
|||
|
||||
|
||||
#undef iscntrl
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iscntrl(int c)
|
||||
{
|
||||
return _isctype(c, _CONTROL);
|
||||
}
|
||||
|
||||
#undef iswcntrl
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswcntrl(wint_t c)
|
||||
{
|
||||
return iswctype(c, _CONTROL);
|
||||
|
|
|
@ -10,11 +10,17 @@
|
|||
#include <msvcrt/ctype.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int __iscsymf(int c)
|
||||
{
|
||||
return (isalpha(c) || ( c == '_' )) ;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int __iscsym(int c)
|
||||
{
|
||||
return (isalnum(c) || ( c == '_' )) ;
|
||||
|
|
|
@ -8,17 +8,26 @@ unsigned short *_pctype_dll = _ctype + 1;
|
|||
unsigned short *_pwctype_dll = _ctype + 1;
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _isctype(unsigned int c, int ctypeFlags)
|
||||
{
|
||||
return (_pctype_dll[(unsigned char)(c & 0xFF)] & ctypeFlags);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswctype(wint_t wc, wctype_t wctypeFlags)
|
||||
{
|
||||
return (_pwctype_dll[(unsigned char)(wc & 0xFF)] & wctypeFlags);
|
||||
}
|
||||
|
||||
// obsolete
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int is_wctype(wint_t wc, wctype_t wctypeFlags)
|
||||
{
|
||||
return (_pwctype_dll[(unsigned char)(wc & 0xFF)] & wctypeFlags);
|
||||
|
|
|
@ -3,12 +3,18 @@
|
|||
|
||||
|
||||
#undef isdigit
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int isdigit(int c)
|
||||
{
|
||||
return _isctype(c, _DIGIT);
|
||||
}
|
||||
|
||||
#undef iswdigit
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswdigit(wint_t c)
|
||||
{
|
||||
return iswctype(c, _DIGIT);
|
||||
|
|
|
@ -2,12 +2,18 @@
|
|||
#include <msvcrt/ctype.h>
|
||||
|
||||
#undef isgraph
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int isgraph(int c)
|
||||
{
|
||||
return _isctype(c,_PUNCT | _ALPHA | _DIGIT);
|
||||
}
|
||||
|
||||
#undef iswgraph
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswgraph(wint_t c)
|
||||
{
|
||||
return iswctype(c,_PUNCT | _ALPHA | _DIGIT);
|
||||
|
|
|
@ -3,11 +3,17 @@
|
|||
|
||||
|
||||
#undef islower
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int islower(int c)
|
||||
{
|
||||
return _isctype(c, _LOWER);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswlower(wint_t c)
|
||||
{
|
||||
return iswctype(c, _LOWER);
|
||||
|
|
|
@ -2,11 +2,17 @@
|
|||
#include <msvcrt/ctype.h>
|
||||
|
||||
#undef isprint
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int isprint(int c)
|
||||
{
|
||||
return _isctype(c,_BLANK | _PUNCT | _ALPHA | _DIGIT);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswprint(wint_t c)
|
||||
{
|
||||
return iswctype((unsigned short)c,_BLANK | _PUNCT | _ALPHA | _DIGIT);
|
||||
|
|
|
@ -3,12 +3,18 @@
|
|||
|
||||
|
||||
#undef ispunct
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int ispunct(int c)
|
||||
{
|
||||
return _isctype(c, _PUNCT);
|
||||
}
|
||||
|
||||
#undef iswpunct
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswpunct(wint_t c)
|
||||
{
|
||||
return iswctype(c, _PUNCT);
|
||||
|
|
|
@ -12,12 +12,18 @@
|
|||
|
||||
|
||||
#undef isspace
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int isspace(int c)
|
||||
{
|
||||
return _isctype(c,_SPACE);
|
||||
}
|
||||
|
||||
#undef iswspace
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswspace(wint_t c)
|
||||
{
|
||||
return iswctype(c,_SPACE);
|
||||
|
|
|
@ -3,11 +3,17 @@
|
|||
|
||||
|
||||
#undef isupper
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int isupper(int c)
|
||||
{
|
||||
return _isctype(c, _UPPER);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswupper(wint_t c)
|
||||
{
|
||||
return iswctype(c, _UPPER);
|
||||
|
|
|
@ -3,12 +3,18 @@
|
|||
|
||||
|
||||
#undef isxdigit
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int isxdigit(int c)
|
||||
{
|
||||
return _isctype(c, _HEX);
|
||||
}
|
||||
|
||||
#undef iswxdigit
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int iswxdigit(wint_t c)
|
||||
{
|
||||
return iswctype(c, _HEX);
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
#include <msvcrt/ctype.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int __toascii(int c)
|
||||
{
|
||||
return((unsigned)(c) & 0x7F);
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
#include <msvcrt/ctype.h>
|
||||
|
||||
#undef tolower
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int tolower(int c)
|
||||
{
|
||||
if (_isctype (c, _UPPER))
|
||||
|
@ -10,6 +13,9 @@ int tolower(int c)
|
|||
}
|
||||
|
||||
#undef towlower
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
wchar_t towlower(wchar_t c)
|
||||
{
|
||||
if (iswctype (c, _UPPER))
|
||||
|
@ -17,6 +23,9 @@ wchar_t towlower(wchar_t c)
|
|||
return(c);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _tolower(int c)
|
||||
{
|
||||
if (_isctype (c, _UPPER))
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
|
||||
|
||||
#undef toupper
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int toupper(int c)
|
||||
{
|
||||
if (_isctype (c, _LOWER))
|
||||
|
@ -11,6 +14,9 @@ int toupper(int c)
|
|||
}
|
||||
|
||||
#undef towupper
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
wchar_t towupper(wchar_t c)
|
||||
{
|
||||
if (iswctype (c, _LOWER))
|
||||
|
@ -18,6 +24,9 @@ wchar_t towupper(wchar_t c)
|
|||
return(c);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _toupper(int c)
|
||||
{
|
||||
if (_isctype (c, _LOWER))
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
#include <msvcrt/direct.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _chdir(const char* _path)
|
||||
{
|
||||
if (_path[1] == ':')
|
||||
|
|
|
@ -7,6 +7,9 @@
|
|||
int cur_drive = 0;
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _chdrive(int drive)
|
||||
{
|
||||
char d[3];
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
#include <msvcrt/stdlib.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
char *_getcwd(char* buffer, int maxlen)
|
||||
{
|
||||
char *cwd;
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include <windows.h>
|
||||
#include <msvcrt/direct.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
char* _getdcwd(int nDrive, char* caBuffer, int nBufLen)
|
||||
{
|
||||
int i =0;
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
#include <msvcrt/direct.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
unsigned int _getdiskfree(unsigned int _drive, struct _diskfree_t* _diskspace)
|
||||
{
|
||||
char RootPathName[10];
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
|
||||
extern int cur_drive;
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _getdrive(void)
|
||||
{
|
||||
char Buffer[MAX_PATH];
|
||||
|
@ -16,6 +19,9 @@ int _getdrive(void)
|
|||
return cur_drive;
|
||||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
unsigned long _getdrives(void)
|
||||
{
|
||||
//fixme get logical drives
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
#include <msvcrt/direct.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _mkdir(const char* _path)
|
||||
{
|
||||
if (!CreateDirectoryA(_path, NULL))
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
#include <msvcrt/direct.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _rmdir(const char* _path)
|
||||
{
|
||||
if (!RemoveDirectoryA(_path))
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
|
||||
#ifdef __GNUC__
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
int _abnormal_termination(void)
|
||||
{
|
||||
printf("Abnormal Termination\n");
|
||||
|
|
|
@ -18,6 +18,9 @@ MsvcrtDebug(ULONG Value)
|
|||
}
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXCEPTION_DISPOSITION
|
||||
_except_handler2(
|
||||
struct _EXCEPTION_RECORD* ExceptionRecord, void* Frame,
|
||||
|
|
|
@ -11,6 +11,9 @@ struct _exception {
|
|||
} ;
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
int _matherr(struct _exception* e)
|
||||
{
|
||||
return 0;
|
||||
|
@ -26,6 +29,9 @@ void __setusermatherr(int (*handler)(struct _exception*))
|
|||
|
||||
#define _FPIEEE_RECORD void
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
int _fpieee_flt(
|
||||
unsigned long exception_code,
|
||||
struct _EXCEPTION_POINTERS* ExceptionPointer,
|
||||
|
|
|
@ -1,12 +1,18 @@
|
|||
#include <windows.h>
|
||||
#define PEXCEPTION_FRAME void*
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
void _global_unwind2( PEXCEPTION_FRAME frame )
|
||||
{
|
||||
//RtlUnwind( frame, 0, NULL, 0 );
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
void _local_unwind2( PEXCEPTION_FRAME endframe, DWORD nr )
|
||||
{
|
||||
//TRACE(crtdll,"(%p,%ld)\n",endframe,nr);
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
#include <msvcrt/internal/ieee.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _chgsign(double __x)
|
||||
{
|
||||
double_t* x = (double_t*)&x;
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
#include <msvcrt/float.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
unsigned int _clearfp (void)
|
||||
{
|
||||
unsigned short __res = _statusfp();
|
||||
|
|
|
@ -2,11 +2,17 @@
|
|||
|
||||
#include <msvcrt/float.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
unsigned int _controlfp (unsigned int unNew, unsigned int unMask)
|
||||
{
|
||||
return _control87(unNew,unMask);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
unsigned int _control87 (unsigned int unNew, unsigned int unMask)
|
||||
{
|
||||
register unsigned int __res;
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include <msvcrt/float.h>
|
||||
#include <msvcrt/internal/ieee.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _copysign (double __d, double __s)
|
||||
{
|
||||
double_t *d = (double_t *)&__d;
|
||||
|
|
|
@ -27,6 +27,9 @@
|
|||
|
||||
typedef int fpclass_t;
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
fpclass_t _fpclass(double __d)
|
||||
{
|
||||
double_t* d = (double_t*)&__d;
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include <msvcrt/float.h>
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
void _fpreset(void)
|
||||
{
|
||||
/* FIXME: This causes an exception */
|
||||
|
|
|
@ -21,6 +21,9 @@ Cambridge, MA 02139, USA. */
|
|||
#include <msvcrt/internal/ieee.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _isnan(double __x)
|
||||
{
|
||||
double_t* x = (double_t*)&__x;
|
||||
|
@ -49,6 +52,9 @@ int _isinf(double __x)
|
|||
return (x->exponent == 0x7ff && (x->mantissah == 0 && x->mantissal == 0));
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _finite(double x)
|
||||
{
|
||||
return !_isinf(x);
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include <msvcrt/float.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _nextafter(double x, double y)
|
||||
{
|
||||
if (x == y)
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include <msvcrt/float.h>
|
||||
#include <msvcrt/internal/ieee.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _scalb( double __x, long e )
|
||||
{
|
||||
double_t *x = (double_t *)&__x;
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
#include <msvcrt/float.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
unsigned int _statusfp (void)
|
||||
{
|
||||
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
#include <msvcrt/msvcrtdbg.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _access( const char *_path, int _amode )
|
||||
{
|
||||
DWORD Attributes = GetFileAttributesA(_path);
|
||||
|
|
|
@ -7,6 +7,9 @@
|
|||
#define mode_t int
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _chmod(const char* filename, mode_t mode)
|
||||
{
|
||||
DWORD FileAttributes = 0;
|
||||
|
|
|
@ -4,6 +4,9 @@
|
|||
#define NDEBUG
|
||||
#include <msvcrt/msvcrtdbg.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _chsize(int _fd, long size)
|
||||
{
|
||||
DPRINT("_chsize(fd %d, size %d)\n", _fd, size);
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
#define NDEBUG
|
||||
#include <msvcrt/msvcrtdbg.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _close(int _fd)
|
||||
{
|
||||
DPRINT("_close(fd %d)\n", _fd);
|
||||
|
|
|
@ -4,6 +4,9 @@
|
|||
#include <msvcrt/internal/file.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _commit(int _fd)
|
||||
{
|
||||
if (! FlushFileBuffers(_get_osfhandle(_fd)) ) {
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include <msvcrt/io.h>
|
||||
#include <msvcrt/fcntl.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _creat(const char *filename, int mode)
|
||||
{
|
||||
return open(filename,_O_CREAT|_O_TRUNC,mode);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: dup.c,v 1.7 2002/11/24 18:42:13 robd Exp $ */
|
||||
/* $Id: dup.c,v 1.8 2003/07/11 17:25:16 royce Exp $ */
|
||||
#include <windows.h>
|
||||
#include <msvcrt/io.h>
|
||||
#include <msvcrt/internal/file.h>
|
||||
|
@ -8,6 +8,9 @@
|
|||
int __fileno_alloc(HANDLE hFile, int mode);
|
||||
int __fileno_getmode(int _fd);
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _dup(int handle)
|
||||
{
|
||||
HANDLE hFile;
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include <msvcrt/io.h>
|
||||
#include <msvcrt/internal/file.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _dup2( int handle1, int handle2 )
|
||||
{
|
||||
return __fileno_dup2( handle1, handle2 );
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include <windows.h>
|
||||
#include <msvcrt/io.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _eof( int _fd )
|
||||
{
|
||||
int cur_pos = _lseek(_fd, 0, SEEK_CUR);
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
#include <msvcrt/io.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
long _filelength(int _fd)
|
||||
{
|
||||
return GetFileSize(_get_osfhandle(_fd),NULL);
|
||||
|
|
|
@ -4,6 +4,9 @@
|
|||
#include <msvcrt/internal/file.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _findclose(int handle)
|
||||
{
|
||||
// check no wildcards or invalid handle
|
||||
|
@ -12,6 +15,9 @@ int _findclose(int handle)
|
|||
return FindClose((void*)handle);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _findfirst(const char* _name, struct _finddata_t* result)
|
||||
{
|
||||
WIN32_FIND_DATAA FindFileData;
|
||||
|
@ -54,6 +60,9 @@ int _findfirst(const char* _name, struct _finddata_t* result)
|
|||
return hFindFile;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _findnext(int handle, struct _finddata_t* result)
|
||||
{
|
||||
WIN32_FIND_DATAA FindFileData;
|
||||
|
|
|
@ -4,6 +4,9 @@
|
|||
#define NDEBUG
|
||||
#include <msvcrt/msvcrtdbg.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _isatty( int fd )
|
||||
{
|
||||
struct stat buf;
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
#include <msvcrt/io.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _locking(int _fd, int mode, long nbytes)
|
||||
{
|
||||
long offset = _lseek(_fd, 0L, 1);
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
#include <msvcrt/internal/file.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
long _lseek(int _fildes, long _offset, int _whence)
|
||||
{
|
||||
return _llseek((HFILE)filehnd(_fildes),_offset,_whence);
|
||||
|
|
|
@ -21,6 +21,9 @@
|
|||
#include <msvcrt/msvcrtdbg.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
char* _mktemp (char *_template)
|
||||
{
|
||||
static int count = 0;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: open.c,v 1.13 2002/11/24 18:42:13 robd Exp $
|
||||
/* $Id: open.c,v 1.14 2003/07/11 17:25:16 royce Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
|
@ -47,6 +47,9 @@ char __is_text_file(FILE* p)
|
|||
return (!((p)->_flag&_IOSTRG) && (fileno_modes[(p)->_file].mode&O_TEXT));
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _open(const char* _path, int _oflag,...)
|
||||
{
|
||||
HANDLE hFile;
|
||||
|
@ -219,11 +222,17 @@ int __fileno_close(int _fd)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _open_osfhandle(void *osfhandle, int flags)
|
||||
{
|
||||
return __fileno_alloc((HANDLE)osfhandle, flags);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
void *_get_osfhandle(int fileno)
|
||||
{
|
||||
return filehnd(fileno);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: pipe.c,v 1.4 2002/11/24 18:42:13 robd Exp $
|
||||
/* $Id: pipe.c,v 1.5 2003/07/11 17:25:16 royce Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
|
@ -13,6 +13,9 @@
|
|||
#include <msvcrt/internal/file.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _pipe(int _fildes[2], unsigned int size, int mode )
|
||||
{
|
||||
HANDLE hReadPipe, hWritePipe;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: read.c,v 1.9 2002/11/24 18:42:13 robd Exp $
|
||||
/* $Id: read.c,v 1.10 2003/07/11 17:25:16 royce Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
|
@ -15,6 +15,9 @@
|
|||
#define NDEBUG
|
||||
#include <msvcrt/msvcrtdbg.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
size_t _read(int _fd, void *_buf, size_t _nbyte)
|
||||
{
|
||||
DWORD _rbyte;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: setmode.c,v 1.6 2002/11/29 15:59:00 robd Exp $
|
||||
/* $Id: setmode.c,v 1.7 2003/07/11 17:25:16 royce Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
|
@ -17,6 +17,9 @@
|
|||
#include <msvcrt/msvcrtdbg.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _setmode(int _fd, int _newmode)
|
||||
{
|
||||
DPRINT("_setmod(fd %d, newmode %x)\n", _fd, _newmode);
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include <msvcrt/io.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _sopen(char *path,int access,int shflag,int mode)
|
||||
{
|
||||
return _open((path), (access)|(shflag), (mode));
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
#include <msvcrt/io.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
off_t _tell(int _file)
|
||||
{
|
||||
return _lseek(_file, 0, SEEK_CUR);
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
|
||||
unsigned _unMode_dll = 022;
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
unsigned _umask (unsigned unMode)
|
||||
{
|
||||
unsigned old_mask = _unMode_dll;
|
||||
|
|
|
@ -12,6 +12,9 @@
|
|||
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _unlink( const char *filename )
|
||||
{
|
||||
if ( !DeleteFileA(filename) )
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
#include <msvcrt/internal/file.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _utime(const char* filename, struct _utimbuf* buf)
|
||||
{
|
||||
int fn;
|
||||
|
|
|
@ -12,6 +12,9 @@
|
|||
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
size_t _write(int _fd, const void *_buf, size_t _nbyte)
|
||||
{
|
||||
DWORD _wbyte;
|
||||
|
|
|
@ -9,6 +9,9 @@ const char *_current_locale;
|
|||
|
||||
int parse_locale(char *locale, char *lang, char *country, char *code_page);
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
char *setlocale(int category, const char *locale)
|
||||
{
|
||||
char lang[100];
|
||||
|
@ -135,6 +138,9 @@ struct lconv _lconv = {
|
|||
127 // n_sign_posn;
|
||||
};
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
struct lconv *localeconv(void)
|
||||
{
|
||||
return (struct lconv *) &_lconv;
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
#include <msvcrt/malloc.h>
|
||||
#include <msvcrt/stdlib.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
void* _expand(void* pold, size_t size)
|
||||
{
|
||||
PHEAP_BUCKET pbucket;
|
||||
|
@ -25,6 +28,9 @@ void* _expand(void* pold, size_t size)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
size_t _msize(void* pBlock)
|
||||
{
|
||||
PHEAP_BUCKET pbucket;
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
#include <windows.h>
|
||||
#include <msvcrt/malloc.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _heapchk(void)
|
||||
{
|
||||
if (!HeapValidate(GetProcessHeap(), 0, NULL))
|
||||
|
@ -9,6 +12,9 @@ int _heapchk(void)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _heapmin(void)
|
||||
{
|
||||
if (!HeapCompact(GetProcessHeap(), 0))
|
||||
|
@ -16,6 +22,9 @@ int _heapmin(void)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _heapset(unsigned int unFill)
|
||||
{
|
||||
if (_heapchk() == -1)
|
||||
|
@ -24,6 +33,9 @@ int _heapset(unsigned int unFill)
|
|||
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _heapwalk(struct _heapinfo* entry)
|
||||
{
|
||||
return 0;
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
|
||||
double atan2 (double __y, double __x);
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double atan2 (double __y, double __x)
|
||||
{
|
||||
register double __value;
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
#include <msvcrt/math.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _cabs( struct _complex z )
|
||||
{
|
||||
return sqrt( z.x*z.x + z.y*z.y );
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
#include <msvcrt/math.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double ceil (double __x)
|
||||
{
|
||||
register double __value;
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
|
||||
double cos (double __x);
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double cos (double __x)
|
||||
{
|
||||
register double __value;
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
#include <msvcrt/math.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double cosh(double x)
|
||||
{
|
||||
const double ebig = exp(fabs(x));
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
#include <msvcrt/stdlib.h>
|
||||
#include <msvcrt/internal/ieee.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double
|
||||
frexp(double __x, int *exptr)
|
||||
{
|
||||
|
|
|
@ -26,6 +26,9 @@
|
|||
#define __SQRT_DBL_MAX 1.3e+154
|
||||
#define __SQRT_DBL_MIN 2.3e-162
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double
|
||||
_hypot(double x, double y)
|
||||
{
|
||||
|
|
|
@ -1,11 +1,17 @@
|
|||
#include <msvcrt/math.h>
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
double _j0(double x)
|
||||
{
|
||||
return x;
|
||||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
double _y0(double x)
|
||||
{
|
||||
return x;
|
||||
|
|
|
@ -1,11 +1,17 @@
|
|||
#include <msvcrt/math.h>
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
double _j1(double x)
|
||||
{
|
||||
return x;
|
||||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
double _y1(double x)
|
||||
{
|
||||
return x;
|
||||
|
|
|
@ -1,11 +1,17 @@
|
|||
#include <msvcrt/math.h>
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
double _jn(int n, double x)
|
||||
{
|
||||
return x;
|
||||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
double _yn(int n, double x)
|
||||
{
|
||||
return x;
|
||||
|
|
|
@ -40,6 +40,9 @@ double __log2 (double __x)
|
|||
return __value;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double pow (double __x, double __y)
|
||||
{
|
||||
register double __value;
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
/* Copyright (C) 1994 DJ Delorie, see COPYING.DJ for details */
|
||||
#include <msvcrt/math.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double sinh(double x)
|
||||
{
|
||||
if(x >= 0.0)
|
||||
|
|
|
@ -19,66 +19,114 @@ double _CIsqrt(double x);
|
|||
double _CIfmod(double x, double y);
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIsin(double x)
|
||||
{
|
||||
return sin(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIcos(double x)
|
||||
{
|
||||
return cos(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CItan(double x)
|
||||
{
|
||||
return tan(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIsinh(double x)
|
||||
{
|
||||
return sinh(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIcosh(double x)
|
||||
{
|
||||
return cosh(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CItanh(double x)
|
||||
{
|
||||
return tanh(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIasin(double x)
|
||||
{
|
||||
return asin(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIacos(double x)
|
||||
{
|
||||
return acos(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIatan(double x)
|
||||
{
|
||||
return atan(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIatan2(double y, double x)
|
||||
{
|
||||
return atan2(y, x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIexp(double x)
|
||||
{
|
||||
return exp(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIlog(double x)
|
||||
{
|
||||
return log(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIlog10(double x)
|
||||
{
|
||||
return log10(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIpow(double x, double y)
|
||||
{
|
||||
return pow(x, y);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIsqrt(double x)
|
||||
{
|
||||
return sqrt(x);
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _CIfmod(double x, double y)
|
||||
{
|
||||
return fmod(x, y);
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
|
||||
#include <msvcrt/math.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double tanh(double x)
|
||||
{
|
||||
if (x > 50)
|
||||
|
|
|
@ -61,6 +61,9 @@ static unsigned char zen_to_han_symbol_table_2[ZTOH_SYMBOLS] = {
|
|||
#define JTOKANA(c) ((c) <= 0x82dd ? (c) + 0xa1 : (c) + 0xa2)
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
unsigned short _mbbtombc(unsigned short c)
|
||||
{
|
||||
if (c >= 0x20 && c <= 0x7e) {
|
||||
|
@ -72,6 +75,9 @@ unsigned short _mbbtombc(unsigned short c)
|
|||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
unsigned short _mbctombb(unsigned short c)
|
||||
{
|
||||
int i;
|
||||
|
|
|
@ -12,21 +12,33 @@
|
|||
#include <msvcrt/mbctype.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbchira(unsigned int c)
|
||||
{
|
||||
return ((c>=0x829F) && (c<=0x82F1));
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbckata(unsigned int c)
|
||||
{
|
||||
return ((c>=0x8340) && (c<=0x8396));
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
unsigned int _mbctohira(unsigned int c)
|
||||
{
|
||||
return c;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
unsigned int _mbctokata(unsigned int c)
|
||||
{
|
||||
return c;
|
||||
|
|
|
@ -11,6 +11,9 @@
|
|||
#include <msvcrt/mbstring.h>
|
||||
#include <msvcrt/mbctype.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbbkana(unsigned char c)
|
||||
{
|
||||
return ((_jctype+1)[(unsigned char)(c)] & (_KNJ_M|_KNJ_P));
|
||||
|
|
|
@ -9,6 +9,9 @@
|
|||
*/
|
||||
#include <msvcrt/mbctype.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbbkpunct( unsigned int c )
|
||||
{
|
||||
return ((_jctype+1)[(unsigned char)(c)] & (_KNJ_P));
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include <windows.h>
|
||||
#include <msvcrt/mbstring.h>
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
int isleadbyte(char *mbstr)
|
||||
{
|
||||
return 0;
|
||||
|
|
|
@ -11,7 +11,11 @@
|
|||
#include <msvcrt/mbctype.h>
|
||||
#include <msvcrt/ctype.h>
|
||||
|
||||
// code page 952 only
|
||||
/*
|
||||
* code page 952 only
|
||||
*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbclower( unsigned int c )
|
||||
{
|
||||
if ((c & 0xFF00) != 0) {
|
||||
|
|
|
@ -10,6 +10,9 @@
|
|||
#include <msvcrt/mbctype.h>
|
||||
#include <msvcrt/ctype.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbbalpha(unsigned char c)
|
||||
{
|
||||
return (isalpha(c) ||_ismbbkalnum(c));
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
#include <msvcrt/ctype.h>
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbbalnum(unsigned char c)
|
||||
{
|
||||
return (isalnum(c) || _ismbbkalnum(c));
|
||||
|
|
|
@ -15,6 +15,9 @@ int _ismbcalnum( unsigned int c )
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbcalpha( unsigned int c )
|
||||
{
|
||||
if ((c & 0xFF00) != 0) {
|
||||
|
@ -27,6 +30,9 @@ int _ismbcalpha( unsigned int c )
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbcdigit( unsigned int c )
|
||||
{
|
||||
if ((c & 0xFF00) != 0) {
|
||||
|
@ -40,6 +46,9 @@ int _ismbcdigit( unsigned int c )
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbcprint( unsigned int c )
|
||||
{
|
||||
if ((c & 0xFF00) != 0) {
|
||||
|
@ -53,6 +62,9 @@ int _ismbcprint( unsigned int c )
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbcsymbol( unsigned int c )
|
||||
{
|
||||
if ((c & 0xFF00) != 0) {
|
||||
|
@ -66,6 +78,9 @@ int _ismbcsymbol( unsigned int c )
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbcspace( unsigned int c )
|
||||
{
|
||||
if ((c & 0xFF00) != 0) {
|
||||
|
@ -78,6 +93,9 @@ int _ismbcspace( unsigned int c )
|
|||
|
||||
return 0;
|
||||
}
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbclegal(unsigned int c)
|
||||
{
|
||||
if ((c & 0xFF00) != 0) {
|
||||
|
@ -89,16 +107,25 @@ int _ismbclegal(unsigned int c)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
int _ismbcl0(unsigned int c)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
int _ismbcl1(unsigned int c)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
int _ismbcl2(unsigned int c)
|
||||
{
|
||||
return 0;
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
#include <msvcrt/mbctype.h>
|
||||
#include <msvcrt/ctype.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbbgraph(unsigned char c)
|
||||
{
|
||||
return (isgraph(c) || _ismbbkana(c));
|
||||
|
|
|
@ -10,6 +10,9 @@
|
|||
#include <msvcrt/mbctype.h>
|
||||
#include <msvcrt/ctype.h>
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
int _ismbbkalnum( unsigned int c )
|
||||
{
|
||||
return ((_jctype+1)[(unsigned char)(c)] & (_KNJ_P));
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue