Am Tuesday, 16. August 2011, 23:08:04 schrieb David Kastrup: > Bertrand Bordage <bordage.bertr...@gmail.com> writes: > > > Compile Lilypond with > > > -DSCM_DEBUG_TYPING_STRICTNESS=2 > > > > I don't understand how you're applying this setting. > > I tried > > ./configure -DSCM..... > > and > > make -DSCM..... > > without success. > > ./configure CXXFLAGS=-DSCM_DEBUG_TYPING_STRICTNESS=2
You can even pass it directly to make: CXXFLAGS=-DSCM_DEBUG_TYPING_STRICTNESS=2 make See also the documentation in /usr/include/libguile/__scm.h (: " * A value of 2 provides a maximum level of compile time type checking since * the SCM datatype will be declared as a struct. This setting should be used * for _compile time_ type checking only, since the compiled result is likely * to be quite inefficient. The right way to make use of this option is to do * a 'make clean; make CFLAGS=-DSCM_DEBUG_TYPING_STRICTNESS=2', fix your * errors, and then do 'make clean; make'. " However, I'm not sure if this will really work out or give us much benefit. In particular, we have lots of checks for == SCM_EOL or == SCM_BOOL_T. E.g. very deep inside the core of lilypond: inline bool ly_cheap_is_list (SCM x) {return scm_is_pair (x) || x==SCM_EOL; } Is this really not allowed? We should definitely wait for Han-Wen to respond, since he is a Guile developer and probably has the deepest knowledge of us all. Before we get a definitive statement, I don't think it's a good idea to let any frog spend some time on it. Cheers, Reinhold -- ------------------------------------------------------------------ Reinhold Kainhofer, reinh...@kainhofer.com, http://reinhold.kainhofer.com/ * Financial & Actuarial Math., Vienna Univ. of Technology, Austria * http://www.fam.tuwien.ac.at/, DVR: 0005886 * LilyPond, Music typesetting, http://www.lilypond.org _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel