Ludovic Courtès writes: > Christopher Baines writes: > >> As this means that the error will be clearer for targets which are >> unsupported. >> >> * gnu/packages/cross-base.scm (cross-libc*): Raise conditions rather than >> returning #f. >> >> Change-Id: I820780ad738d85a98950de5608f3019e961ff7c8 > > [...] > >> - (else #f))) >> + (else >> + (raise (condition >> + (&package-unsupported-target-error >> + (package libc) >> + (target target))))))) > > What I'm unsure is whether this works with libc-less triplets such as > ‘avr’ or ‘or1k-elf’. Hmm, it seems like this is erroring in some cases where it didn't before, I'm not sure why though. I ended up here through rust-sysroot-for-... since it calls cross-libc. Handling cross-libc returning #f in the packages which use it seems error prone, hence adding the exception inside of cross-libc*. It looks liek cross-gcc-toolchain/implementation is expecting cross-libc to return #f in some cases though, so maybe I need to add a guard there somehow to handle the exception and ignore it, as happens when it returns #f.