[mercury-users] Mercury seems OK on OpenBSD/zaurus

Julian Fondren ayrnieu at gmail.com
Sat Feb 10 02:03:13 AEDT 2007


On Thu, 8 Feb 2007, Julien Fischer wrote:
> I'm a little suprised that you got as far as you did without a garbage
> collector.

I'm pleased :-)

>> debugger/interpreter in grade asm_fast
>> debugger/uci_index in grade asm_fast
>> debugger/browser_test in grade asm_fast
> Possibly problems caused by (a lack of?) readline.

Ah, no: uci_index.err and interpreter.err both have:

  Mercury runtime: memory zone heap#1 overflowed
  This may have been caused by a stack overflow, due to unbounded recursion.

With interpreter.out revealing the same problem after it caught a SIGSEV

I gave the process 1G of swap, so these surely come from the lack of a GC

>> debugger/interactive in grade asm_fast
> Does dynamic linking work on this platform, e.g. dlopen(), if not that
> would be why this test case is failing.

dlopen() exists and works, but interactive.out has e.g.

?- qperm([1,2,3], List), List = [4 | _].
<stdin>:011: In clause for predicate `mdb_query.run/2':
<stdin>:011:   warning: variable `_2' occurs more than once in this scope.
<stdin>:012: In clause for predicate `mdb_query.run/2':
<stdin>:012:   warning: variable `_2' occurs more than once in this scope.
<stdin>:017: In clause for predicate `mdb_query.query/2':
<stdin>:017:   warning: variable `_2' occurs more than once in this scope.
<stdin>:001: In clause for predicate `mdb_query.query/2':
<stdin>:001:   warning: variable `_2' occurs more than once in this scope.
<stdin>:017: Inferred :- pred query((list.list(int)), (list.list(int))).
<stdin>:017: Inferred :- mode query(out, out) is nondet.
dlopen failed: File not found
?- quit.

>> general/intermod_type in grade asm_fast
>> general/mode_inference_reorder in grade asm_fast
>> general/string_to_float in grade asm_fast
> I would be interested in seeing the log files generated by these tests
> and the debugger ones above.

Ah, the first two are heap overflows again.

But the third is more interesting:

*** string_to_float.exp Wed Oct 23 22:54:41 2002
--- string_to_float.out Sun Feb  4 23:20:54 2007
***************
*** 10,16 ****
  string__to_float("+1") = 1.000000
  string__to_float("0") = 0.000000
  string__to_float("+0") = 0.000000
! string__to_float("-0") = -0.000000
  string__to_float("-") FAILS
  string__to_float("+") FAILS
  string__to_float(" ") FAILS
--- 10,16 ----
  string__to_float("+1") = 1.000000
  string__to_float("0") = 0.000000
  string__to_float("+0") = 0.000000
! string__to_float("-0") = 0.000000
  string__to_float("-") FAILS
  string__to_float("+") FAILS
  string__to_float(" ") FAILS

Thanks,
Julian
--------------------------------------------------------------------------
mercury-users mailing list
Post messages to:       mercury-users at csse.unimelb.edu.au
Administrative Queries: owner-mercury-users at csse.unimelb.edu.au
Subscriptions:          mercury-users-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the users mailing list