Subject: Re: bug#31740: guix pull failed with syntax error.

From: [email-masked] (Ludovic Courtès)
Date: Thu, 07 Jun 2018 18:19:17 +0200

Fis Trivial <[email-masked]> skribis:

> compiling...	 10.0% of 40 filesIn ice-9/psyntax.scm:
>   1679:45 19 (parse _ _ _ _ _ _ _)
> In ice-9/boot-9.scm:
>    222:17 18 (map1 (((("l-10a3c941d34314a1-35bb" macro . #<procedure 197b840 at ice-9/eval.scm:333:13 (a)>) ("placeholder" placeholder) ("l-10a3c941d34314a1-35b7" lexical . #) ("l-10?" . #) ?) . #)))
> In ice-9/psyntax.scm:
>   2338:44 17 (expand-let _ _ _ ((line . 1347) (column . 0) (filename . "guix/store.scm")) (hygiene guix store) #<procedure build-let (src ids vars val-exps body-exp)> _ _ ((#<syntax match-drop?> ?)))
>   1679:45 16 (parse _ _ _ _ _ _ _)
> In ice-9/boot-9.scm:
>    222:17 15 (map1 (((("placeholder" placeholder) ("l-10a3c941d34314a1-35d3" lexical . tail-10a3c941d34314a1-35d4) ("l-10a3c941d34314a1-35bb" macro . #<procedure 197b840 at ice-9/eval.scm:?>) ?) ?)))
> In ice-9/psyntax.scm:
>   1484:23 14 (_ _ _)
> In ice-9/boot-9.scm:
>    222:29 13 (map1 (#<syntax (#<syntax mproc> #<syntax head>)> #<syntax (#<syntax lambda> (#<syntax result>) (#<syntax if> #<syntax result> (#<syntax return> #<syntax result>) (#<syntax loop> #<?>))
>    222:17 12 (map1 (#<syntax (#<syntax lambda> (#<syntax result>) (#<syntax if> #<syntax result> (#<syntax return> #<syntax result>) (#<syntax loop> #<syntax tail>)))>))
> In ice-9/psyntax.scm:
>   1789:11 11 (lp ((#<syntax if> #<syntax result> (#<syntax return> #<syntax result>) (#<syntax loop> #<syntax tail>))) ())
>   1679:45 10 (parse _ _ _ _ _ _ _)
> In ice-9/boot-9.scm:
>    222:17  9 (map1 (((("placeholder" placeholder) ("l-10a3c941d34314a1-35f3" lexical . result-10a3c941d34314a1-35f2) ("placeholder" placeholder) ("l-10a3c941d34314a1-35d3" lexical . #) # # ?) . #)))
> In ice-9/psyntax.scm:
>   1407:23  8 (_ _ (#<syntax return> #<syntax result>) (#<syntax loop> #<syntax tail>))
>   1348:32  7 (syntax-type (#<syntax return> #<syntax result>) (("placeholder" placeholder) ("l-10a3c941d34314a1-35f3" lexical . result-10a3c941d34314a1-35f2) ("placeholder" placeholder) (# . #) ?) ?)
> compiling...	 12.5% of 40 files  1559:32  6 (expand-macro #<procedure 1a53c00 at ice-9/eval.scm:333:13 (a)> _ _ _ _ _ _)
> In ice-9/boot-9.scm:
>    752:25  5 (dispatch-exception _ _ _)
>    751:25  4 (dispatch-exception 1 syntax-error (return "return used outside of 'with-monad'" ((line . 1347) (column . 0) (filename . "guix/store.scm")) (return result) #f))
> In ./guix/build/compile.scm:
>     129:6  3 (_ _ . _)
> In ice-9/boot-9.scm:
>     829:9  2 (catch #t #<procedure 1ae6e80 at ./guix/build/compile.scm:129:6 ()> #<procedure 7ffff2315810 at ./guix/build/compile.scm:129:6 args> _)
> In ./guix/build/compile.scm:
>    132:21  1 (_)
> In unknown file:
>            0 (make-stack #t)
> ./guix/build/compile.scm:132:21: Syntax error:
> guix/store.scm:1348:0: return: return used outside of 'with-monad' in form (return result)
> builder for `/gnu/store/9qm694macj2s9a528nshbzgqca19njdx-guix-core.drv' failed with exit code 1

This is a tricky non-deterministic bug in Guile that isn’t fixed yet:

  https://bugs.gnu.org/27476

Thanks,
Ludo’.