Weird "missing hi file" problem with a serializable Core patch

Cheng Shao cheng.shao at tweag.io
Wed Sep 16 19:08:53 UTC 2020


Thanks Brandon,

I checked the strace log and before the error is written, there's a log entry:

openat(AT_FDCWD,
"_build/stage1/libraries/ghc-prim/build/GHC/Types.hi",
O_RDONLY|O_NOCTTY|O_NONBLOCK) = -1 ENOENT (No such file or directory)

So it looks like GHC is indeed looking at the correct hi path, not the
doubled path.

On Wed, Sep 16, 2020 at 9:03 PM Brandon Allbery <allbery.b at gmail.com> wrote:
>
> Without looking at the implementation, it looks to me like the filename is doubled for some reason. This may suggest places to look.
>
> On Wed, Sep 16, 2020 at 2:57 PM Cheng Shao <cheng.shao at tweag.io> wrote:
>>
>> Hi all,
>>
>> Following a short chat in #ghc last week, I did a first attempt of
>> reusing existing Iface logic to implement serialization for
>> codegen-related Core. The implementation is included in the attached
>> patch (~100 loc). As a quick and dirty validation of whether it works,
>> I also modified the codegen pipeline logic to do a roundtrip: after
>> CorePrep, the Core bits are converted to Iface, then we immediately
>> convert it back and use it for later compiling.
>>
>> With the patch applied, stage-1 GHC would produce a "missing hi file"
>> error like:
>>
>> : Bad interface file: _build/stage1/libraries/ghc-prim/build/GHC/Types.hi
>>       _build/stage1/libraries/ghc-prim/build/GHC/Types.hi:
>> openBinaryFile: does not exist (No such file or directory)
>>
>> The error surprises me, since by the time we perform the Core-to-Core
>> roundtrip, the .hi file should already have been written to disk. Is
>> there anything obviously wrong with the implementation? I'd appreciate
>> any pointers or further questions, thanks a lot!
>>
>> Best regards,
>> Cheng
>> _______________________________________________
>> ghc-devs mailing list
>> ghc-devs at haskell.org
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
>
>
>
> --
> brandon s allbery kf8nh
> allbery.b at gmail.com


More information about the ghc-devs mailing list