From 09736c1621ad5cb67ac1b4b21ce2ea6f3761539b Mon Sep 17 00:00:00 2001 From: ocean Date: Wed, 5 Jan 2005 08:00:50 +0000 Subject: * parse.y (BITSTACK_POP): workaround for bcc32 compiler's bug. shift assignment operator '>>=' for __int64 in struct may generate collapsed code. [ruby-dev:25342] * win32/win32.[ch]: failed to compile on bcc32 (and probably wince) [ruby-dev:25306] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 9 +++++++++ parse.y | 2 +- win32/win32.c | 2 ++ win32/win32.h | 5 ++++- 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index b2a82812b8..872c8e7e4e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +Wed Jan 5 16:39:54 2005 Hirokazu Yamamoto + + * parse.y (BITSTACK_POP): workaround for bcc32 compiler's bug. + shift assignment operator '>>=' for __int64 in struct may + generate collapsed code. [ruby-dev:25342] + + * win32/win32.[ch]: failed to compile on bcc32 (and probably wince) + [ruby-dev:25306] + Wed Jan 5 12:49:39 2005 Nobuyoshi Nakada * eval.c (rb_thread_initialize): Thread objects cannot be initialized diff --git a/parse.y b/parse.y index bda3f8f5f7..87c20b99a1 100644 --- a/parse.y +++ b/parse.y @@ -73,7 +73,7 @@ typedef unsigned long stack_type; # endif # define BITSTACK_PUSH(stack, n) (stack = (stack<<1)|((n)&1)) -# define BITSTACK_POP(stack) (stack >>= 1) +# define BITSTACK_POP(stack) (stack = stack >> 1) # define BITSTACK_LEXPOP(stack) (stack = (stack >> 1) | (stack & 1)) # define BITSTACK_SET_P(stack) (stack&1) diff --git a/win32/win32.c b/win32/win32.c index c21fca6fbc..da79b438a1 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -3520,6 +3520,7 @@ rb_w32_snprintf(char *buf, size_t size, const char *format, ...) return ret; } +#if !defined(__BORLANDC__) && !defined(_WIN32_WCE) int rb_w32_isatty(int fd) { @@ -3533,6 +3534,7 @@ rb_w32_isatty(int fd) } return 1; } +#endif #undef mkdir #undef rmdir diff --git a/win32/win32.h b/win32/win32.h index 790d3b8393..916e8ce276 100644 --- a/win32/win32.h +++ b/win32/win32.h @@ -105,7 +105,6 @@ extern "C++" { #define eof() _eof() #define filelength(h) _filelength(h) #define mktemp(t) _mktemp(t) -#define perror(s) _perror(s) #define read(h, b, l) _read(h, b, l) #define tell(h) _tell(h) #define unlink(p) _unlink(p) @@ -127,8 +126,10 @@ extern "C++" { #define stat(path,st) rb_w32_stat(path,st) #undef execv #define execv(path,argv) rb_w32_aspawn(P_OVERLAY,path,argv) +#if !defined(__BORLANDC__) && !defined(_WIN32_WCE) #undef isatty #define isatty(h) rb_w32_isatty(h) +#endif #undef mkdir #define mkdir(p, m) rb_w32_mkdir(p, m) @@ -195,7 +196,9 @@ extern int rb_w32_aspawn(int, const char *, char *const *); extern int kill(int, int); extern int fcntl(int, int, ...); extern pid_t rb_w32_getpid(void); +#if !defined(__BORLANDC__) && !defined(_WIN32_WCE) extern int rb_w32_isatty(int); +#endif extern int rb_w32_mkdir(const char *, int); extern int rb_w32_rmdir(const char *); -- cgit v1.2.3