diff --git a/ghc/tests/ccall/should_compile/cc002.hs b/ghc/tests/ccall/should_compile/cc002.hs new file mode 100644 index 0000000000000000000000000000000000000000..d3ed1f15db94d4288fd549a8bd915716ca48b8c1 --- /dev/null +++ b/ghc/tests/ccall/should_compile/cc002.hs @@ -0,0 +1,9 @@ +--!!! cc002 -- ccall with ambiguous result (should be defaulted to ()) +module ShouldCompile where + +a :: IO () +a = do + _ccall_ a + return () + + diff --git a/ghc/tests/ccall/should_fail/cc001.hs b/ghc/tests/ccall/should_fail/cc001.hs new file mode 100644 index 0000000000000000000000000000000000000000..f0dd58c8ff75b751f28122d22422698fbcb755d9 --- /dev/null +++ b/ghc/tests/ccall/should_fail/cc001.hs @@ -0,0 +1,5 @@ +--!!! cc002 -- ccall with ambiguous argument +module Test where + +f :: IO () +f = _ccall_ foo (undefined ()) diff --git a/ghc/tests/ccall/should_fail/cc001.stderr b/ghc/tests/ccall/should_fail/cc001.stderr new file mode 100644 index 0000000000000000000000000000000000000000..33177e444c3397c2b764d8774673e5b1e90d2fd3 --- /dev/null +++ b/ghc/tests/ccall/should_fail/cc001.stderr @@ -0,0 +1,7 @@ + +cc001.hs:5: + Cannot resolve the ambiguous context (PrelGHC.CCallable aJC) + `PrelGHC.CCallable aJC' arising from an argument in the _ccall_ to `foo', namely `(Prelude.undefined ())' at cc001.hs:5 + + +Compilation had errors