Eric Bavier <bav...@cray.com> skribis: [...]
> In gnu/system.scm: > 501: 3 [operating-system-services # # #f] > 476: 2 [essential-services # # #f] > 576: 1 [operating-system-etc-service #] > In gnu/system/nss.scm: > 217: 0 [name-service-switch->string (# # # # ...)] > > gnu/system/nss.scm:217:19: In procedure name-service-switch->string: > gnu/system/nss.scm:217:19: In procedure struct_vtable: Wrong type argument in > position 1 (expecting struct): (#<<service> type: #<service-type login ... This looks like another record issue: the code is accessing the `services' field instead of the `name-service-switch' field, which is right next to it. So it looks like there are still stale .go files somewhere being picked up. This time it would mean that nss.go is up-to-date and system.go is stale, since nss.go assumes an offset for `name-service-switch' that is +1 compared to that of system.go. Could you maybe try: rm -rf ~/.cache/guile make clean-go strace -f -o log make and check in `log' whether .go files outside of the build tree are being used? Thanks, Ludo'.