Hello! Following the inlining of stringbuf storage (ba54a2026beaadb4e7566d4b9e2c9e4c7cd793e6), the ‘bdw-gc-static-alloc' branch introduces a small source-level incompatibility. Namely, the following no longer works:
const char foo[] = "foo"; SCM_SYMBOL (s_foo, foo); Because of the macrology that’s used to statically allocate stringbufs [0], the string has to be a literal: SCM_SYMBOL (s_foo, "foo"); The use of non-literal strings occurred only in ‘eval.c’ in Guile proper [1]. The question is: should we merge ‘bdw-gc-static-alloc’ despite this incompatibility (it can be argued that this won’t hurt many people and can be easily worked around)? If the answer is “no”, we still have the option of merging other aspects of the ‘bdw-gc-static-alloc’ branch, such as static allocation of subrs. What do you think? Thanks, Ludo’. [0] http://git.sv.gnu.org/gitweb/?p=guile.git;a=blobdiff;f=libguile/snarf.h;h=9eaccf60c14d825e657718e6f75257e293649f84;hp=c3113e1a7a977f95eb922e924855244dfe4d6cc2;hb=5f236208d0d864546e59afa0f5a11c9b3ba14b10;hpb=f0eb5ae6c173aed35965b0561897fda1d8ff0db1 [1] http://git.sv.gnu.org/gitweb/?p=guile.git;a=blobdiff;f=libguile/eval.c;h=e58c05410c2831d4061eb92b4ee2883c9203c919;hp=59db42976242e12fd41995e5e1fa5d169bd3b9bf;hb=5f236208d0d864546e59afa0f5a11c9b3ba14b10;hpb=d7e7a02a6251c8ed4f76933d9d30baeee3f599c0