[Bug?] Assertion triggered by seemingly-correct code
[Thread Prev] | [Thread Next]
- Subject: [Bug?] Assertion triggered by seemingly-correct code
- From: Adrian Perez de Castro <aperez@xxxxxxxxxx>
- Date: Thu, 9 Mar 2017 20:02:42 +0200
- To: myrddin-dev@xxxxxxxxxxxxxx
Hello list! I have been playing with Myrddin for the last days (I have a thing for exotic minimalistic programmin languages :P), now that 0.1.1 has been released. While trying to build a parser for the HiPack [0] serialization format at some point I started getting the following output from "mbld": % mbld project base /home/aperez/devel/hipack-myr: hipack... 6m hip.myr 6m main.myr 6m: node.c:485: setns: Assertion `!ns || !n->name.ns || !strcmp(n->name.ns, ns)' failed. CRASH: "6m main.myr" % But the code I am writing should be (AFAIU) correct. I have been able to reduce the size of the input source files so hopefully they are small enough to help track down the bug. If there is a bug, because it could be as well that my code is wrong :-P File "hip.myr" (removing the usage of "bio.ioerr" does not trigger the assertion): use bio pkg hip = type status(@t) = union `Ok @t `IoErr bio.ioerr // <--- This. ;; const load : (f : bio.file# -> status(void)) ;; const load = { f -> `Ok void } File "main.myr" (this just creates a "bio.file" and calls "hip.load"): use bio use std use "hip" const main = { var f = bio.mkfile(0, bio.Rd) std.put("{}\n", hip.load(f)) bio.free(f) } FWIW, the assertion gets triggered both with 0.1.1 and building from the current top of the Git "master" branch. Cheers, and thanks for working on Myrddin, it has been fun to use so far :) --- [0] http://hipack.org
Attachment:
pgpZQTWoP_ERu.pgp
Description: PGP signature
Re: [Bug?] Assertion triggered by seemingly-correct code | Ori Bernstein <ori@xxxxxxxxxxxxxx> |
- Prev by Date: Re: Re-rolled 0.1 release
- Next by Date: Re: [Bug?] Assertion triggered by seemingly-correct code
- Previous by thread: Myrddin 0.1.1
- Next by thread: Re: [Bug?] Assertion triggered by seemingly-correct code
- Index(es):