CTSRD-CHERI / QuickCheckVEngine

A RISC-V TestRIG Verification Engine based on QuickCheck
BSD 2-Clause "Simplified" License
7 stars 9 forks source link

genMOSC_Torture declaration causes multiple build issues #33

Closed elliotb-lowrisc closed 5 months ago

elliotb-lowrisc commented 5 months ago

There appears to be two problems with the lines: https://github.com/CTSRD-CHERI/QuickCheckVEngine/blob/9fc7ec5c2790f8074dab6c77a0b2cf28f2543ced/src/QuickCheckVEngine/Templates/GenTransExec.hs#L174-L175

Firstly, the function names do not match each other. This results in the following error:

src/QuickCheckVEngine/Templates/GenTransExec.hs:175:1: error:
    Multiple declarations of ‘genBSC_Excps_Torture’
    Declared at: src/QuickCheckVEngine/Templates/GenTransExec.hs:148:1
                 src/QuickCheckVEngine/Templates/GenTransExec.hs:175:1
    |
175 | genBSC_Excps_Torture arch tmpReg = random $ do
    | ^^^^^^^^^^^^^^^^^^^^
Error: cabal: Failed to build exe:QCVEngine from QCVEngine-0.1.0.0.

Secondly, when the names are corrected, the following type error occurs:

src/QuickCheckVEngine/Templates/GenTransExec.hs:174:20: error:
    Not in scope: type constructor or class ‘ArchDesc’
    |
174 | genMOSC_Torture :: ArchDesc -> Integer -> Template
    |                    ^^^^^^^^
Error: cabal: Failed to build exe:QCVEngine from QCVEngine-0.1.0.0.