fmidue / haskell-template-task

Other
0 stars 0 forks source link

Leakage of warnings about supporting modules #13

Open jvoigtlaender opened 4 months ago

jvoigtlaender commented 4 months ago

Specifically, in this task: https://autotool.fmi.uni-due.de/route/aufgabe/571, the IOTestHelper uses tail.

If the student submits a compiling main module, the presence of tail in the helper module has no impact.

But if the student submits a non-compiling main module, then in addition to the compiler error message about their own code, they also get this message about IOTestHelper:

IOTestHelper.hs:11:66: warning: [GHC-63394] [-Wx-partial (in -Wextended-warnings)]
    In the use of ‘tail’
    (imported from Prelude, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."

That's of course confusing.

Is there a way to systematically make sure only complaints about the student code surface?

Or to make sure that at configuration time the task type checks that the modules are compile-error-and-warning-free?