Ludovic Courtès writes: Hey Ludo, > > Janneke Nieuwenhuizen skribis: > >> So, the problem is that our patch doesrn't disable the warnings after all. >> The guile-launcher has >> >> guile-launcher.c: >> >> #if defined __GNU__ >> /* XXX: On 32-bit GNU/Hurd (i586-gnu), libgc emits "Repeated allocation" >> warnings that are annoying and interfere with communications between >> 'guix-daemon' and 'guix authenticate': >> . Silence them. */ >> std::cerr << "silencing libgc warnings" << std::endl; >> GC_set_warn_proc (no_warnings); >> #endif >> .. >> scm_boot_guile (argc, argv, inner_main, 0); >> >> >> and then guile's gc.c just undoes that > > D’oh! Good catch! Yeah :-/ > You’ll hate me for suggesting that :-) You know better than that :) > but what if in ‘guile-launcher.c’ > we moved the ‘GC_set_warn_proc’ call to ‘inner_main’? I believe in that > case it would have the desired effect, right? Ah, I cannot believe I missed that -- I read "inner_main" and thought it would call guile's inner main. > That would avoid patching Guile wholesale. > > Anyhow, kudos for the tricky and probably lengthy debugging session! Yeah, so I'm proposing the attached patch -- tested and works for me -- well, apart from having to set overload-threshold. I asked on #hurd and hopefully one of Damien's patch series will take care of that; I'll try that some time soon. Greetings, Janneke