fixes to use SWI version of readline.

This commit is contained in:
ubu32
2011-02-26 18:34:44 -08:00
parent fbdac55317
commit 53e8811077
10 changed files with 358 additions and 35 deletions

View File

@@ -83,7 +83,16 @@ free_read_data(ReadData _PL_rd)
static int
read_term(term_t t, ReadData _PL_rd ARG_LD)
{
return Yap_read_term(t, rb.stream, _PL_rd->varnames);
int rval;
term_t except;
if (!(rval = Yap_read_term(t, rb.stream, &except, _PL_rd->varnames))) {
if (except) {
_PL_rd->has_exception = TRUE;
_PL_rd->exception = except;
}
}
return rval;
}

View File

@@ -31,7 +31,7 @@ typedef YAP_Term (*Func)(term_t); /* foreign functions */
extern const char *Yap_GetCurrentPredName(void);
extern YAP_Int Yap_GetCurrentPredArity(void);
extern int Yap_read_term(term_t t, IOSTREAM *st, term_t vs);
extern int Yap_read_term(term_t t, IOSTREAM *st, term_t *exc, term_t vs);
extern int Yap_LookupSWIStream(void *swi_s);
extern term_t Yap_fetch_module_for_format(term_t args, YAP_Term *modp);
extern IOENC Yap_DefaultEncoding(void);