Andy Wingo writes: >> + (setenv "CPP" (string-append gcc "/bin/cpp")) >> + (for-each (lambda (var) >> + (and-let* ((value (getenv var)) >> + (path (search-path-as-string->list >> + value)) >> + (native-path > ^^ > > Bad indentation here; it should be indented like let* Argh, sorry this all wrong, a rebase goof-up; only fixed this on wip-hurd+mingw branch. It was meant as (fixed in attached patch) (and-let* ((value (getenv var)) (path (search-path-as-string->list value)) (native-path (list->search-path-as-string (remove cross? path) ":"))) (setenv var native-path))) What about indentation, I blindly trust Emacs... > However given this, both "value" and "path" should succeed without > error... Yes... >> + (native-path >> + (and path >> + (list->search-path-as-string >> + (remove cross? path) ":")))) > > And this is a repeat? Perhaps you meant to replace the and-let* block, > or to remove this one? I would lean towards not using and-let* fwiw :) Yes... Why do you not prefer the and-let*, how would you write it? > For one-armed ifs, please use "when" or "unless". Tx :) Ok. Thanks! Greetings, Jan