From: Jörg F. Wittenberger <joerg.wittenber...@softeyes.net> Subject: Re: [Chicken-users] types.db incorrect Date: 08 Sep 2011 13:32:07 +0200
> On Sep 6 2011, Felix wrote: > >>Thanks agauin, Joerg. I pushed this change as well. >> >>> If not, how would I turn the consequence - which is wrong code at this >>> time - into a warning? >> >>You can check the results of specialization with "-debug P" (which >>dumps >>the program after specialization has taken place). "-debug x" shows >>the >>specializations done. You can switch off specialization by just >>compiling >>with "-O2". That way you can check whether "-specialize" (enabled by >>-O3 and higher) results in incorrect code. > > Is there a switch to print the programm after basic macro expansion? -debug 2 > > Somehow my problem is all too strange. After about four years running > all sudden the tree is sometimes not balanced. I inserted code to > check > some invariants. Since I did I don't understand anything at all > anymore. > > The same two tests applied twice. First as two single tests: > > (,%if (,(red? 't) r) > (dbg2 "delmin: new root is bad (red) " r)) > (,%if (,(red? 't) (,root-node t)) > (dbg2 "delmin: new root node is bad (red) " r)) > ,(check-tree t-delete-min 't) > > And as the first thing in check-tree combined within an "or": > > (and > (or (,(red? 't) t) (,(red? 't) (,root-node t))) > (begin > (dbg2 'root-red (,(red? 't) t) (,(red? 't) (,root-node t)) t) > #t) > > The second one fires. But not until after several hundred random > insert > and deletions of the minimum. > > However the strange thing is, both the values are explicitly set to > "black" at the line before the test. > > I just went over the -debug P output. It' hard to be sure with all > those generated names, but as far as I can see, there is no way > codewise > that could make a black (#t) to red (#f). Short of magic. > > Unfortunately this situation paralyses me. I too much depend on it. Does it work with specialization turned off? (-O2 only) cheers, felix _______________________________________________ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users