One-shot mode is buggy w.r.t. hs-boot files
Consider
### A.hs-boot
```haskell
module A where
```
### B.hs
```haskell
module B where
import {-# SOURCE #-} A
```
### Command Line
```
$ ghc -c A.hs-boot B.hs
B.hs:3:1:
Bad interface file: A.hi-boot-boot
A.hi-boot-boot: openBinaryFile: does not exist (No such file or directory)
```
I expect the modules to get compiled cleanly. Instead I get an error.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 7.7 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Driver |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"One-shot mode is buggy w.r.t. hs-boot files","status":"New","operating_system":"","component":"Driver","related":[],"milestone":"7.8.3","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"7.7","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"Consider\r\n\r\n=== A.hs-boot\r\n{{{\r\n#!haskell\r\nmodule A where\r\n}}}\r\n\r\n=== B.hs\r\n{{{\r\n#!haskell\r\nmodule B where\r\n\r\nimport {-# SOURCE #-} A\r\n}}}\r\n\r\n=== Command Line\r\n{{{\r\n$ ghc -c A.hs-boot B.hs\r\n\r\nB.hs:3:1:\r\n Bad interface file: A.hi-boot-boot\r\n A.hi-boot-boot: openBinaryFile: does not exist (No such file or directory)\r\n}}}\r\n\r\nI expect the modules to get compiled cleanly. Instead I get an error.\r\n","type_of_failure":"OtherFailure","blocking":[]} -->
issue