aboutsummaryrefslogtreecommitdiff
path: root/test-suite/misc/non-marshalable-state.sh
blob: eef7786ebc96b2e4385356942d2b0b6ffed55b45 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/env bash

set -e

export COQBIN=$BIN
export PATH=$COQBIN:$PATH

cd misc/non-marshalable-state/

coq_makefile -f _CoqProject -o Makefile

make clean

make src/evil_plugin.cmxs
make src/good_plugin.cmxs

RC=1
# must fail
coqc -async-proofs on  -I src -Q theories Marshal theories/evil.v 2> log1 1>&2 || RC=0
#   for this reason
grep -q 'Marshalling error' log1 || RC=1

# must work
coqc -async-proofs off -I src -Q theories Marshal theories/evil.v

# must work
coqc -async-proofs on  -I src -Q theories Marshal theories/good.v


exit $RC