From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Bavier Subject: bug#30879: Commit bc499b113 broke guix on guile@2.0.14, improper field initialization Date: Thu, 22 Mar 2018 09:45:38 -0500 Message-ID: <20180322144538.GP105827@pe06.us.cray.com> References: <20180320154302.GL105827@pe06.us.cray.com> <877eq6ibp9.fsf@gnu.org> <20180321151642.GN105827@pe06.us.cray.com> <87y3ildttr.fsf@gnu.org> <20180321211403.GO105827@pe06.us.cray.com> <87r2oddo9l.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:43473) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ez1Tj-0003fM-W2 for bug-guix@gnu.org; Thu, 22 Mar 2018 10:46:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ez1Te-0006il-Ad for bug-guix@gnu.org; Thu, 22 Mar 2018 10:46:08 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:40091) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ez1Te-0006iE-6G for bug-guix@gnu.org; Thu, 22 Mar 2018 10:46:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ez1Td-0003Tc-QB for bug-guix@gnu.org; Thu, 22 Mar 2018 10:46:01 -0400 Sender: "Debbugs-submit" Resent-Message-ID: Content-Disposition: inline In-Reply-To: <87r2oddo9l.fsf@gnu.org> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 30879@debbugs.gnu.org On Thu, Mar 22, 2018 at 12:04:06AM +0100, Ludovic Courtès wrote: > Eric Bavier 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): (#< type: # > 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? Oh, so it loks like .go files from the system-installed guix are being picked up: 53692 openat(AT_FDCWD, "/usr/local/lib/guile/2.0/site-ccache/gnu/system.go", O_RDONLY|O_CLOEXEC) = 10 I hadn't expected that, but I suppose it makes sense. Running make under ./pre-inst-env does not help. We should probably find a way to prevent this in general, right? We shouldn't be loading guix modules from outside the source tree during build. -- Eric Bavier, Scientific Libraries, Cray Inc.