Fix dropping of error locations#37
Open
cchalmers wants to merge 3 commits into
Open
Conversation
Since #14 the error locations often pointed to the end of the circuit instead of the correct location. That should now be fixed, along with a regression test.
The error-location test shells out to a bare ghc to compile BusError.hs with the plugin enabled, which only works when circuit-notation is resolvable as a package. During a plain `nix build` of the package it isn't registered yet, so ghc reported "Could not find module 'CircuitNotation'" and the test failed claiming the fixture compiled. * error-location: probe whether the ambient ghc can compile against the plugin and skip (with a message) when it can't, instead of failing. * flake: add a per-ghc `checks` output that runs all test suites against a ghc with circuit-notation registered, so the error-location test actually runs under nix. CI nix job now uses it across all ghcs. * cabal: ship the fixtures via extra-source-files. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Collaborator
|
Cool! I did find an issue in the meantime, but I have yet to make a minimal reproducer out of it. I'll have a look. Perhaps for testing you can use this structure: and That way it doesn't just run in Nix. |
Replaces the skip + Nix-only `checks` approach from the previous commit with the mechanism martijnbastiaan suggested on the PR (as used by clash-lang/checked-literals): wire the in-place package database into GHC_PACKAGE_PATH during the package's own check phase, so the regular error-location test suite runs everywhere -- cabal CI and the plain `nix build` -- rather than only under a separate Nix derivation. * flake: set NIX_GHC_PACKAGE_PATH_FOR_TEST in preCheck (via developPackage's modifier) so the subprocess ghc finds circuit-notation; drop the bespoke `checks` output. * error-location: drop the probe/skip; it now always runs for real. * ci: revert the nix job to a single `nix build`, whose check phase runs the suites. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Since #14 the error locations often pointed to the end of the circuit instead of the correct location. That should now be fixed, along with a regression test.
Hopefully resolves #35.