Subject: bug#28858: make fails: In procedure allocate-struct: Wrong type argument in position 2: 5

From: [email-masked] (Ludovic Courtès)
Date: Mon, 16 Oct 2017 15:16:58 +0200

Hi Martin,

Martin Castillo <[email-masked]> skribis:

> [Is it okay to attach logs or should I put them better in the message body?]

Either way is fine.

>    2316:4  3 (save-module-excursion #<procedure ce7f540 at ice-9/boo…>)
>   3006:22  2 (_)
> In unknown file:
>            1 (primitive-load-path "gnu/services/shepherd" #<procedur…>)
> In gnu/services/shepherd.scm:
>      90:2  0 (_)
>
> gnu/services/shepherd.scm:90:2: gnu/services/shepherd.scm:90:2: In procedure allocate-struct: Wrong type argument in position 2: 5

This obscure message suggests an ABI compatibility: for example, a field
was recently added to the <file-system> record type; the .go files that
you had in your build tree predate this change, and so they need to be
rebuilt.

The immediate solution is to run “make clean-go && make”.

I think we’ll improve the build system to address this automatically.

Thanks,
Ludo’.