[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gforth] ORDER bug

From: Josh Grams
Subject: Re: [gforth] ORDER bug
Date: Sun, 13 Nov 2011 18:41:54 -0500
User-agent: Mutt/1.5.18 (2008-05-17)

>Hm, looking at head?, it really looks wrong.  Try replacing it with this:
>: head? ( addr -- f )
>\G heuristic check whether addr is a name token; may deliver false
>\G positives; addr must be a valid address
>    dup dup aligned <>
>    if
>       drop false exit \ heads are aligned
>    then
>    name>string dup $1F > if
>       2drop false exit \ realistically the name is short
>    then
>    + cfaligned @ here forthstart within ; \ and the cfa is outside

That does look more straightforward.  But it doesn't eliminate the
problem I was having.   I guess I never gave a good minimal test case.
This should reproduce it for reliably:

        here 32 cells erase  wordlist .voc

Hmm...a zero-length name should always be an invalid header, so I assume
replacing `$1F >` with `$20 1 WITHIN` should be OK?


reply via email to

[Prev in Thread] Current Thread [Next in Thread]