diff options
author | dreammaster | 2019-05-22 05:48:52 +0100 |
---|---|---|
committer | Paul Gilbert | 2019-05-24 18:21:07 -0700 |
commit | aa5fd603b6fd623c138fd3529176847b5b538e49 (patch) | |
tree | 1c9003a4ef67b73ae89c5fba0e6024969e710f03 /engines/glk/tads | |
parent | 0c02346b48e068dddff81bf4fde57040135deb51 (diff) | |
download | scummvm-rg350-aa5fd603b6fd623c138fd3529176847b5b538e49.tar.gz scummvm-rg350-aa5fd603b6fd623c138fd3529176847b5b538e49.tar.bz2 scummvm-rg350-aa5fd603b6fd623c138fd3529176847b5b538e49.zip |
GLK: TADS2: Compilation fixes
Diffstat (limited to 'engines/glk/tads')
-rw-r--r-- | engines/glk/tads/os_buffer.h | 2 | ||||
-rw-r--r-- | engines/glk/tads/os_filetype.h | 2 | ||||
-rw-r--r-- | engines/glk/tads/os_glk.cpp | 9 | ||||
-rw-r--r-- | engines/glk/tads/os_glk.h | 2 | ||||
-rw-r--r-- | engines/glk/tads/tads2/built_in.cpp | 6 | ||||
-rw-r--r-- | engines/glk/tads/tads2/error.cpp | 6 | ||||
-rw-r--r-- | engines/glk/tads/tads2/error_handling.cpp | 10 | ||||
-rw-r--r-- | engines/glk/tads/tads2/error_handling.h | 12 | ||||
-rw-r--r-- | engines/glk/tads/tads2/line_source_file.cpp | 3 | ||||
-rw-r--r-- | engines/glk/tads/tads2/ltk.cpp | 4 | ||||
-rw-r--r-- | engines/glk/tads/tads2/ltk.h | 4 | ||||
-rw-r--r-- | engines/glk/tads/tads2/memory_cache_heap.cpp | 2 | ||||
-rw-r--r-- | engines/glk/tads/tads2/memory_cache_heap.h | 2 | ||||
-rw-r--r-- | engines/glk/tads/tads2/output.cpp | 10 | ||||
-rw-r--r-- | engines/glk/tads/tads2/text_io.h | 2 | ||||
-rw-r--r-- | engines/glk/tads/tads2/vocabulary.h | 4 | ||||
-rw-r--r-- | engines/glk/tads/tads2/vocabulary_parser.cpp | 8 |
17 files changed, 51 insertions, 37 deletions
diff --git a/engines/glk/tads/os_buffer.h b/engines/glk/tads/os_buffer.h index 3fc2209cec..4fa9662831 100644 --- a/engines/glk/tads/os_buffer.h +++ b/engines/glk/tads/os_buffer.h @@ -33,6 +33,8 @@ #ifndef GLK_TADS_OS_BUFFER #define GLK_TADS_OS_BUFFER +#include "common/scummsys.h" + namespace Glk { namespace TADS { diff --git a/engines/glk/tads/os_filetype.h b/engines/glk/tads/os_filetype.h index 93b101698f..2a48c4b562 100644 --- a/engines/glk/tads/os_filetype.h +++ b/engines/glk/tads/os_filetype.h @@ -55,7 +55,7 @@ enum os_filetype_t { OSFTT3IMG = 12, /* T3 image file (.t3 - formerly .t3x) */ OSFTT3OBJ = 13, /* T3 object file (.t3o) */ OSFTT3SYM = 14, /* T3 symbol export file (.t3s) */ - OSFTT3SAV = 15, /* T3 saved state file (.t3v) */ + OSFTT3SAV = 15 /* T3 saved state file (.t3v) */ }; } // End of namespace TADS diff --git a/engines/glk/tads/os_glk.cpp b/engines/glk/tads/os_glk.cpp index 90a5f00d6a..03d8a3a445 100644 --- a/engines/glk/tads/os_glk.cpp +++ b/engines/glk/tads/os_glk.cpp @@ -641,8 +641,10 @@ unsigned char *os_gets(unsigned char *buf, size_t buflen) * routine with use_timeout==false. The regular os_gets() would not * satisfy this need, because it cannot resume an interrupted input.) */ +#if defined GLK_TIMERS && defined GLK_MODULE_LINE_ECHO static char * timebuf = NULL; static size_t timelen = 0; +#endif int os_gets_timeout(unsigned char *buf, size_t bufl, unsigned long timeout_in_milliseconds, int use_timeout) @@ -1099,5 +1101,12 @@ void os_expause() { void os_plain(void) {} +int memicmp(const char *s1, const char *s2, int len) { + Common::String cs1(s1, len); + Common::String cs2(s2, len); + + return cs1.compareToIgnoreCase(cs2); +} + } // End of namespace TADS } // End of namespace Glk diff --git a/engines/glk/tads/os_glk.h b/engines/glk/tads/os_glk.h index 7b76876001..ac5090f930 100644 --- a/engines/glk/tads/os_glk.h +++ b/engines/glk/tads/os_glk.h @@ -3217,6 +3217,8 @@ int os_get_sysinfo(int code, void *param, long *result); #define os_remainder_long(a, b) ((a) % (b)) #endif +int memicmp(const char *s1, const char *s2, int len); + } // End of namespace TADS } // End of namespace Glk diff --git a/engines/glk/tads/tads2/built_in.cpp b/engines/glk/tads/tads2/built_in.cpp index 30c2772b78..c67399d402 100644 --- a/engines/glk/tads/tads2/built_in.cpp +++ b/engines/glk/tads/tads2/built_in.cpp @@ -902,7 +902,7 @@ void bifrnd(bifcxdef *ctx, int argc) /* * case-insensitive substring matching */ -static char *bif_stristr(const char *s1, const char *s2) +static const char *bif_stristr(const char *s1, const char *s2) { size_t s1len; size_t s2len; @@ -913,7 +913,7 @@ static char *bif_stristr(const char *s1, const char *s2) { /* if this is a match, return this substring */ if (memicmp(s1, s2, s2len) == 0) - return (char *)s1; + return (const char *)s1; } return 0; @@ -4146,7 +4146,7 @@ void bifinpdlg(bifcxdef *ctx, int argc) uchar *p; char prompt[256]; char lblbuf[256]; - char *labels[10]; + const char *labels[10]; char *dst; char *xp; uint len; diff --git a/engines/glk/tads/tads2/error.cpp b/engines/glk/tads/tads2/error.cpp index eeb59cda81..62c5e9a3e6 100644 --- a/engines/glk/tads/tads2/error.cpp +++ b/engines/glk/tads/tads2/error.cpp @@ -93,7 +93,7 @@ int errfmt(char *outbuf, int outbufl, const char *fmt, int argc, const erradef * static struct { int tokid; - char *toknam; + const char *toknam; } toklist[] = { { TOKTSEM, "semicolon" }, @@ -106,7 +106,7 @@ int errfmt(char *outbuf, int outbufl, const char *fmt, int argc, const erradef * { TOKTWHILE, "\"while\"" }, { TOKTLPAR, "left paren ('(')" }, { TOKTEQ, "'='" }, - { 0, (char *)0 } + { 0, (const char *)nullptr } }; for (i = 0 ; toklist[i].toknam ; ++i) @@ -185,7 +185,7 @@ void errsign(errcxdef *ctx, int e) { } /* enter a string argument */ -char *errstr(errcxdef *ctx, char *str, int len) { +char *errstr(errcxdef *ctx, const char *str, int len) { char *ret = &ctx->errcxbuf[ctx->errcxofs]; memcpy(ret, str, (size_t)len); diff --git a/engines/glk/tads/tads2/error_handling.cpp b/engines/glk/tads/tads2/error_handling.cpp index b71fc8ce11..ac2b01df53 100644 --- a/engines/glk/tads/tads2/error_handling.cpp +++ b/engines/glk/tads/tads2/error_handling.cpp @@ -34,7 +34,7 @@ int errfmt(char *outbuf, int outbufl, char *fmt, int argc, erradef *argv) int argi = 0; int len; char buf[20]; - char *p = nullptr; + const char *p = nullptr; char fmtchar; while (*fmt != '\0' && outbufl > 1) @@ -148,7 +148,7 @@ void errjmp(jmp_buf buf, int e) #ifdef ERR_NO_MACRO /* base error signal function */ -void errsign(errcxdef *ctx, int e, char *facility) +void errsign(errcxdef *ctx, int e, const char *facility) { strncpy(ctx->errcxptr->errfac, facility, ERRFACMAX); ctx->errcxptr->errfac[ERRFACMAX] = '\0'; @@ -161,7 +161,7 @@ void errsign(errcxdef *ctx, int e, char *facility) } /* signal an error with no arguments */ -void errsigf(errcxdef *ctx, char *facility, int e) +void errsigf(errcxdef *ctx, const char *facility, int e) { errargc(ctx, 0); errsign(ctx, e, facility); @@ -188,7 +188,7 @@ void errrse1(errcxdef *ctx, errdef *fr) } /* log an error: base function */ -void errlogn(errcxdef *ctx, int err, char *facility) +void errlogn(errcxdef *ctx, int err, const char *facility) { ctx->errcxofs = 0; (*ctx->errcxlog)(ctx->errcxlgc, facility, err, ctx->errcxptr->erraac, @@ -196,7 +196,7 @@ void errlogn(errcxdef *ctx, int err, char *facility) } /* log an error with no arguments */ -void errlogf(errcxdef *ctx, char *facility, int err) +void errlogf(errcxdef *ctx, const char *facility, int err) { errargc(ctx, 0); errlogn(ctx, err, facility); diff --git a/engines/glk/tads/tads2/error_handling.h b/engines/glk/tads/tads2/error_handling.h index 7c56b2f831..8d37929184 100644 --- a/engines/glk/tads/tads2/error_handling.h +++ b/engines/glk/tads/tads2/error_handling.h @@ -74,7 +74,7 @@ namespace TADS2 { union erradef { int erraint; /* integer argument */ - char *errastr; /* text string argument */ + const char *errastr; /* text string argument */ }; struct errdef { @@ -99,7 +99,7 @@ typedef struct errmfdef errmfdef; struct errcxdef { errdef *errcxptr; /* current error frame */ - void (*errcxlog)(void *, char *fac, int err, int argc, erradef *); + void (*errcxlog)(void *, const char *fac, int err, int argc, erradef *); /* error logging callback function */ void *errcxlgc; /* context for error logging callback */ int errcxofs; /* offset in argument buffer */ @@ -187,7 +187,7 @@ char *errstr(errcxdef *ctx, const char *str, int len); /* signal an error with argument count already set */ #ifdef ERR_NO_MACRO -void errsign(errcxdef *ctx, int e, char *facility); +void errsign(errcxdef *ctx, int e, const char *facility); #else /* ERR_NO_MACRO */ # ifdef DEBUG void errjmp(jmp_buf buf, int e); @@ -206,7 +206,7 @@ void errjmp(jmp_buf buf, int e); /* signal an error with no arguments */ #ifdef ERR_NO_MACRO -void errsigf(errcxdef *ctx, char *facility, int err); +void errsigf(errcxdef *ctx, const char *facility, int err); #else /* ERR_NO_MACRO */ #define errsigf(ctx, fac, e) (errargc(ctx,0),errsign(ctx,e,fac)) #endif /* ERR_NO_MACRO */ @@ -270,7 +270,7 @@ void errrse1(errcxdef *ctx, errdef *fr); /* log an error (no signalling, just reporting) */ #ifdef ERR_NO_MACRO -void errlogn(errcxdef *ctx, int err, char *facility); +void errlogn(errcxdef *ctx, int err, const char *facility); #else /* ERR_NO_MACRO */ #define errlogn(ctx,err,fac) \ @@ -282,7 +282,7 @@ void errlogn(errcxdef *ctx, int err, char *facility); /* log an error with no arguments */ #ifdef ERR_NO_MACRO -void errlogf(errcxdef *ctx, char *facility, int err); +void errlogf(errcxdef *ctx, const char *facility, int err); #else /* ERR_NO_MACRO */ /* void errlogf(errcxdef *ctx, char *facility, int err); */ diff --git a/engines/glk/tads/tads2/line_source_file.cpp b/engines/glk/tads/tads2/line_source_file.cpp index b5da3d1a3c..430b1d9767 100644 --- a/engines/glk/tads/tads2/line_source_file.cpp +++ b/engines/glk/tads/tads2/line_source_file.cpp @@ -403,7 +403,8 @@ void linfglop2(lindef *lin, uchar *buf) /* save line source information to binary (.gam) file; TRUE ==> error */ int linfwrt(lindef *lin, osfildef *fp) { -# define linf ((linfdef *)lin) +#define linf ((linfdef *)lin) +#define UCHAR_MAX 255 uchar buf[UCHAR_MAX + 6]; size_t len; uint pgcnt; diff --git a/engines/glk/tads/tads2/ltk.cpp b/engines/glk/tads/tads2/ltk.cpp index c385ee7999..6961f216ae 100644 --- a/engines/glk/tads/tads2/ltk.cpp +++ b/engines/glk/tads/tads2/ltk.cpp @@ -130,7 +130,7 @@ void ltk_free(void *mem) { * ltk_errlog - ERRor LOGging function. Logs an error from the LER * system. */ -void ltk_errlog(void *ctx, char *fac, int errCode, int argc, erradef *argv) { +void ltk_errlog(void *ctx, const char *fac, int errCode, int argc, erradef *argv) { char buf[128]; /* formatted error buffer */ char msg[128]; /* message buffer */ @@ -152,7 +152,7 @@ void ltk_errlog(void *ctx, char *fac, int errCode, int argc, erradef *argv) { /* * ltk_dlg - DiaLog. Puts the given message in a dialog box. */ -void ltk_dlg(char *title, char *msg, ...) { +void ltk_dlg(const char *title, const char *msg, ...) { va_list argp; /* printf args */ char inbuf[80]; /* input buffer */ char outbuf[160]; /* allow inbuf to double in size */ diff --git a/engines/glk/tads/tads2/ltk.h b/engines/glk/tads/tads2/ltk.h index 2fbe7a853b..fa66b8a7c7 100644 --- a/engines/glk/tads/tads2/ltk.h +++ b/engines/glk/tads/tads2/ltk.h @@ -56,13 +56,13 @@ extern void ltkfre(); * printf-style arguments must be passed in also, if the message * requires them. */ -extern void ltk_dlg(char *title, char *msg, ...); +extern void ltk_dlg(const char *title, const char *msg, ...); /* * ltk_errlog - Error logging function for LER routines. */ -extern void ltk_errlog(void *ctx, char *fac, int errCode, int agrc, erradef *argv); +extern void ltk_errlog(void *ctx, const char *fac, int errCode, int agrc, erradef *argv); /* diff --git a/engines/glk/tads/tads2/memory_cache_heap.cpp b/engines/glk/tads/tads2/memory_cache_heap.cpp index fae3c5e080..5704f46a48 100644 --- a/engines/glk/tads/tads2/memory_cache_heap.cpp +++ b/engines/glk/tads/tads2/memory_cache_heap.cpp @@ -30,7 +30,7 @@ namespace TADS2 { /* global to keep track of all allocations */ IF_DEBUG(ulong mchtotmem;) -uchar *mchalo(errcxdef *ctx, size_t siz, char *comment) { +uchar *mchalo(errcxdef *ctx, size_t siz, const char *comment) { uchar *ret; VARUSED(comment); diff --git a/engines/glk/tads/tads2/memory_cache_heap.h b/engines/glk/tads/tads2/memory_cache_heap.h index 269cdec3ad..6405f4957c 100644 --- a/engines/glk/tads/tads2/memory_cache_heap.h +++ b/engines/glk/tads/tads2/memory_cache_heap.h @@ -43,7 +43,7 @@ namespace TADS2 { * An out-of-memory error is signalled if insufficient memory * is available. The comment is for debugging purposes only. */ -uchar *mchalo(errcxdef *ctx, size_t siz, char *comment); +uchar *mchalo(errcxdef *ctx, size_t siz, const char *comment); /* allocate a structure */ #define MCHNEW(errctx, typ, comment) \ diff --git a/engines/glk/tads/tads2/output.cpp b/engines/glk/tads/tads2/output.cpp index 8b9fd74925..6ff2a992a4 100644 --- a/engines/glk/tads/tads2/output.cpp +++ b/engines/glk/tads/tads2/output.cpp @@ -192,7 +192,7 @@ static uchar *fmstop; /* format string area top */ static objnum cmdActor; /* current actor */ /* forward declarations of static functions */ -static void outstring_stream(out_stream_info *stream, char *s); +static void outstring_stream(out_stream_info *stream, const char *s); static void outchar_noxlat_stream(out_stream_info *stream, char c); static char out_parse_entity(char *outbuf, size_t outbuf_size, char **sp, size_t *slenp); @@ -1077,8 +1077,8 @@ static void outflushn_stream(out_stream_info *stream, int nl) } else { - char *suffix = nullptr; /* extra text to add after the flushed text */ - int countnl = 0; /* true if line counts for [more] paging */ + const char *suffix = nullptr; /* extra text to add after the flushed text */ + int countnl = 0; /* true if line counts for [more] paging */ /* null-terminate the buffer at the current position */ stream->linebuf[++i] = '\0'; @@ -1621,7 +1621,7 @@ static void outchar_stream(out_stream_info *stream, char c) /* * write out a string, translating to the local system character set */ -static void outstring_stream(out_stream_info *stream, char *s) +static void outstring_stream(out_stream_info *stream, const char *s) { /* write out each character in the string */ for ( ; *s ; ++s) @@ -1813,7 +1813,7 @@ static char read_tag(char *dst, size_t dstlen, int *is_end_tag, * display a string of a given length to a given stream */ static int outformatlen_stream(out_stream_info *stream, - char *s, size_t slen) + const char *s, size_t slen) { char c; int done = 0; diff --git a/engines/glk/tads/tads2/text_io.h b/engines/glk/tads/tads2/text_io.h index 65194654f1..9a0e19885d 100644 --- a/engines/glk/tads/tads2/text_io.h +++ b/engines/glk/tads/tads2/text_io.h @@ -92,7 +92,7 @@ uint tiocapturesize(tiocxdef *ctx); void outfmt(tiocxdef *ctx, uchar *txt); /* format a null-terminated (C-style) string to the display */ -int outformat(char *s); +int outformat(const char *s); /* format a counted-length string, which may not be null-terminated */ int outformatlen(char *s, uint len); diff --git a/engines/glk/tads/tads2/vocabulary.h b/engines/glk/tads/tads2/vocabulary.h index f4c058edaf..d28dcfe0fb 100644 --- a/engines/glk/tads/tads2/vocabulary.h +++ b/engines/glk/tads/tads2/vocabulary.h @@ -609,7 +609,7 @@ void vocrevert(voccxdef *ctx); void vocdmnclr(voccxdef *ctx); /* display a parser error message */ -void vocerr(voccxdef *ctx, int err, char *f, ...); +void vocerr(voccxdef *ctx, int err, const char *f, ...); /* * display a parser informational error message - this will display the @@ -617,7 +617,7 @@ void vocerr(voccxdef *ctx, int err, char *f, ...); * words, and should be used when providing information, such as objects * we're assuming by default */ -void vocerr_info(voccxdef *ctx, int err, char *f, ...); +void vocerr_info(voccxdef *ctx, int err, const char *f, ...); /* client undo callback - undoes a daemon/fuse/notifier */ void vocdundo(void *ctx, uchar *data); diff --git a/engines/glk/tads/tads2/vocabulary_parser.cpp b/engines/glk/tads/tads2/vocabulary_parser.cpp index c0ff75df57..719005851c 100644 --- a/engines/glk/tads/tads2/vocabulary_parser.cpp +++ b/engines/glk/tads/tads2/vocabulary_parser.cpp @@ -686,7 +686,7 @@ struct vocerr_va_info * vocerr_va(). */ static void vocerr_va_prep(voccxdef *ctx, struct vocerr_va_info *info, - int err, char *f, va_list argptr) + int err, const char *f, va_list argptr) { /* * presume that we'll use the given format string, instead of one @@ -874,7 +874,7 @@ static void vocerr_va_prep(voccxdef *ctx, struct vocerr_va_info *info, * property re-initialized for the call to this routine. */ static void vocerr_va(voccxdef *ctx, struct vocerr_va_info *info, - int err, char *f, va_list argptr) + int err, const char *f, va_list argptr) { char *buf; @@ -896,7 +896,7 @@ static void vocerr_va(voccxdef *ctx, struct vocerr_va_info *info, /* * display a parser informational message */ -void vocerr_info(voccxdef *ctx, int err, char *f, ...) +void vocerr_info(voccxdef *ctx, int err, const char *f, ...) { va_list argptr; struct vocerr_va_info info; @@ -915,7 +915,7 @@ void vocerr_info(voccxdef *ctx, int err, char *f, ...) /* * display a parser error */ -void vocerr(voccxdef *ctx, int err, char *f, ...) +void vocerr(voccxdef *ctx, int err, const char *f, ...) { va_list argptr; struct vocerr_va_info info; |