diff --git a/C/atoms.c b/C/atoms.c index be71ed600..24732d688 100644 --- a/C/atoms.c +++ b/C/atoms.c @@ -626,19 +626,11 @@ p_atom_chars( USES_REGS1 ) } at = AtomOfTerm(t1); if (IsWideAtom(at)) { - if (yap_flags[YAP_TO_CHARS_FLAG] == QUINTUS_TO_CHARS) { - NewT = Yap_WideStringToList((wchar_t *)RepAtom(at)->StrOfAE); - } else { - NewT = Yap_WideStringToListOfAtoms((wchar_t *)RepAtom(AtomOfTerm(t1))->StrOfAE); - } + NewT = Yap_WideStringToListOfAtoms((wchar_t *)RepAtom(AtomOfTerm(t1))->StrOfAE); if (NewT == 0L) goto expand_global; } else { - if (yap_flags[YAP_TO_CHARS_FLAG] == QUINTUS_TO_CHARS) { - NewT = Yap_StringToList(RepAtom(at)->StrOfAE); - } else { - NewT = Yap_StringToListOfAtoms(RepAtom(AtomOfTerm(t1))->StrOfAE); - } + NewT = Yap_StringToListOfAtoms(RepAtom(AtomOfTerm(t1))->StrOfAE); } return Yap_unify(NewT, ARG2); } else { @@ -663,47 +655,7 @@ p_atom_chars( USES_REGS1 ) Yap_Error(TYPE_ERROR_LIST, t, "atom_chars/2"); return(FALSE); } - if (yap_flags[YAP_TO_CHARS_FLAG] == QUINTUS_TO_CHARS) { - while (t != TermNil) { - register Term Head; - register Int i; - Head = HeadOfTerm(t); - if (IsVarTerm(Head)) { - Yap_Error(INSTANTIATION_ERROR,Head,"atom_chars/2"); - return(FALSE); - } else if (!IsIntegerTerm(Head)) { - Yap_Error(REPRESENTATION_ERROR_CHARACTER_CODE,Head,"atom_chars/2"); - return(FALSE); - } - i = IntegerOfTerm(Head); - if (i < 0) { - Yap_Error(REPRESENTATION_ERROR_CHARACTER_CODE,Head,"atom_chars/2"); - return(FALSE); - } - if (i > MAX_ISO_LATIN1 && !ws) { - ws = ch_to_wide(String, s PASS_REGS); - } - if (ws) { - if (ws > (wchar_t *)AuxSp-1024) { - goto expand_auxsp; - } - *ws++ = i; - } else { - if (s+1024 > (char *)AuxSp) { - goto expand_auxsp; - } - *s++ = i; - } - t = TailOfTerm(t); - if (IsVarTerm(t)) { - Yap_Error(INSTANTIATION_ERROR,t,"atom_chars/2"); - return(FALSE); - } else if (!IsPairTerm(t) && t != TermNil) { - Yap_Error(TYPE_ERROR_LIST, t, "atom_chars/2"); - return(FALSE); - } - } - } else { + { /* ISO Prolog Mode */ int has_atoms = yap_flags[STRICT_ISO_FLAG]; int has_ints = FALSE; @@ -1581,11 +1533,7 @@ p_number_chars( USES_REGS1 ) } #endif } - if (yap_flags[YAP_TO_CHARS_FLAG] == QUINTUS_TO_CHARS) { - NewT = Yap_StringToList(String); - } else { - NewT = Yap_StringToListOfAtoms(String); - } + NewT = Yap_StringToListOfAtoms(String); return Yap_unify(NewT, ARG2); } if (IsVarTerm(t)) { @@ -1597,44 +1545,7 @@ p_number_chars( USES_REGS1 ) return(FALSE); } s = String; - if (yap_flags[YAP_TO_CHARS_FLAG] == QUINTUS_TO_CHARS) { - while (t != TermNil) { - register Term Head; - register Int i; - Head = HeadOfTerm(t); - if (IsVarTerm(Head)) { - Yap_Error(INSTANTIATION_ERROR,Head,"number_chars/2"); - return(FALSE); - } else if (!IsIntegerTerm(Head)) { - Yap_Error(TYPE_ERROR_INTEGER,Head,"number_chars/2"); - return(FALSE); - } - i = IntOfTerm(Head); - if (i < 0 || i > 255) { - Yap_Error(TYPE_ERROR_INTEGER,Head,"number_chars/2"); - return(FALSE); - } - if (s+1024 > (char *)AuxSp) { - int offs = (s-String); - String = Yap_ExpandPreAllocCodeSpace(0, NULL, TRUE); - if (String + (offs+1024) > (char *)AuxSp) { - /* crash in flames */ - Yap_Error(OUT_OF_AUXSPACE_ERROR, ARG1, "allocating temp space in number_chars/2"); - return FALSE; - } - goto restart_aux; - } - *s++ = i; - t = TailOfTerm(t); - if (IsVarTerm(t)) { - Yap_Error(INSTANTIATION_ERROR,t,"number_chars/2"); - return(FALSE); - } else if (!IsPairTerm(t) && t != TermNil) { - Yap_Error(TYPE_ERROR_LIST,t,"number_chars/2"); - return(FALSE); - } - } - } else { + { /* ISO code */ int has_atoms = yap_flags[STRICT_ISO_FLAG]; int has_ints = FALSE; diff --git a/C/gmp_support.c b/C/gmp_support.c index f8abb6c87..54e5883d4 100644 --- a/C/gmp_support.c +++ b/C/gmp_support.c @@ -239,7 +239,7 @@ Yap_gmp_div_big_int(Term t, Int i) MP_INT *b = Yap_BigIntOfTerm(t); mpz_init_set(&new, b); - if (yap_flags[INTEGER_ROUNDING_FLAG] == 0) { + if ( (-3 / 2) == -2 ) { if (i > 0) { mpz_tdiv_q_ui(&new, &new, i); } else if (i == 0) { @@ -544,7 +544,7 @@ Yap_gmp_div_big_big(Term t1, Term t2) MP_INT *b2 = Yap_BigIntOfTerm(t2); mpz_init_set(&new, b1); - if (yap_flags[INTEGER_ROUNDING_FLAG] == 0) { + if ( (-3 / 2) == -2 ) { mpz_tdiv_q(&new, &new, b2); } else { mpz_fdiv_q(&new, &new, b2); diff --git a/C/init.c b/C/init.c index a7971b673..31fa21b48 100755 --- a/C/init.c +++ b/C/init.c @@ -900,10 +900,6 @@ InitFlags(void) { /* note that Yap_heap_regs must be set first */ - yap_flags[MAX_ARITY_FLAG] = -1; - yap_flags[INTEGER_ROUNDING_FLAG] = 0; - yap_flags[YAP_MAX_INTEGER_FLAG] = (Int)(~((CELL)1 << (sizeof(Int)*8-1))); - yap_flags[YAP_MIN_INTEGER_FLAG] = (Int)(((CELL)1 << (sizeof(Int)*8-1))); yap_flags[YAP_TO_CHARS_FLAG] = ISO_TO_CHARS; yap_flags[LANGUAGE_MODE_FLAG] = 0; yap_flags[STRICT_ISO_FLAG] = FALSE; diff --git a/H/Yap.h b/H/Yap.h index a150b47d3..ddbf1274a 100755 --- a/H/Yap.h +++ b/H/Yap.h @@ -342,11 +342,6 @@ typedef pthread_rwlock_t rwlock_t; typedef enum { - MAX_ARITY_FLAG = 1, - INTEGER_ROUNDING_FLAG = 2, - YAP_MAX_INTEGER_FLAG = 3, - YAP_MIN_INTEGER_FLAG = 4, - YAP_TO_CHARS_FLAG = 7, LANGUAGE_MODE_FLAG = 8, STRICT_ISO_FLAG = 9, SOURCE_MODE_FLAG = 11, diff --git a/pl/flags.yap b/pl/flags.yap index bc465d241..8fc6fcbec 100755 --- a/pl/flags.yap +++ b/pl/flags.yap @@ -397,16 +397,6 @@ yap_flag(system_options,X) :- '$system_options'(wam_profiler) :- \+ '$undefined'(reset_op_counters, prolog). -yap_flag(to_chars_mode,X) :- - var(X), !, - ( '$access_yap_flags'(7,0) -> X = quintus ; X = iso ). -yap_flag(to_chars_mode,quintus) :- !, - '$set_yap_flags'(7,0). -yap_flag(to_chars_mode,iso) :- !, - '$set_yap_flags'(7,1). -yap_flag(to_chars_mode,X) :- - '$do_error'(domain_error(flag_value,to_chars_mode+X),yap_flag(to_chars_mode,X)). - yap_flag(update_semantics,X) :- var(X), !, ( '$log_upd'(I) -> '$convert_upd_sem'(I,X) ). @@ -577,7 +567,6 @@ yap_flag(max_threads,X) :- '$yap_system_flag'(strict_iso). '$yap_system_flag'(syntax_errors). '$yap_system_flag'(system_options). -'$yap_system_flag'(to_chars_mode). '$yap_system_flag'(toplevel_hook). '$yap_system_flag'(toplevel_print_options). '$yap_system_flag'(typein_module). @@ -629,8 +618,6 @@ yap_flag(max_threads,X) :- '$syntax_check_single_var'(_,on), '$syntax_check_discontiguous'(_,on), '$syntax_check_multiple'(_,on), - % YAP_TO_CHARS - '$set_yap_flags'(7,1), fileerrors, '$transl_to_on_off'(X1,on), % CHAR_CONVERSION