mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-19 19:33:46 +00:00
Estimated hours taken: 8
Adapt the tests in the hard_coded directory so that the version of the
Mercury compiler built with MSVC passes them in the hlc.gc grade.
tests/hard_coded/deep_copy.exp2:
tests/hard_coded/expand.exp2:
tests/hard_coded/float_reg.exp2:
tests/hard_coded/string_loop.exp2:
tests/hard_coded/write.exp2:
tests/hard_coded/write_reg1.exp2:
The MSVC runtime prints out floating points using three digits for
the exponent instead of two for most other runtimes.
tests/hard_coded/remove_file.m:
s/io__tmp_name/io__make_tmp/ as tmp_name is obsolete.
tests/hard_coded/Mmakefile:
Remove test_bitset and add bitset.
tests/hard_coded/bitset.exp:
tests/hard_coded/bitset.m:
tests/hard_coded/bitset_tester.m:
tests/hard_coded/test_bitset.exp:
tests/hard_coded/test_bitset.m:
Move this test into one test case because mmake falls over with
unable to make `std_util.m^M', plus there is no reason to have this
case spread over two files.
tests/hard_coded/exceptions/test_exceptions_func.m:
Remove the uneeded import of std_util, this avoids the
`std_util.m^M' problem mentioned in the previous test case.
49 lines
735 B
Plaintext
49 lines
735 B
Plaintext
var("X") + int(3) * var("X^2") ; (type)
|
|
{ type }
|
|
{ ':-' }
|
|
':-'
|
|
{ blah }
|
|
blah ; (type), (type) * blah ; (type)
|
|
((blah ; blah), blah) * blah ; blah
|
|
(type) * blah ; (type)
|
|
TESTING DISCRIMINATED UNIONS
|
|
one
|
|
two
|
|
three
|
|
apple([9, 5, 1])
|
|
banana([three, one, two])
|
|
zop(3.30000000000000, 2.03000000000000)
|
|
zip(3, 2)
|
|
zap(3, -2.11100000000000)
|
|
wombat
|
|
foo
|
|
|
|
TESTING POLYMORPHISM
|
|
poly_one([2399.30000000000])
|
|
poly_two(3)
|
|
poly_three(3.33000000000000, 4, poly_one(9.11000000000000))
|
|
|
|
TESTING BUILTINS
|
|
""
|
|
"Hello, world\n"
|
|
"Foo%sFoo"
|
|
"\""
|
|
'a'
|
|
'&'
|
|
3.14159000000000
|
|
1.12832498300000e-021
|
|
2.23954899000000e+023
|
|
-65
|
|
4
|
|
univ_cons(["hi! I\'m a univ!"])
|
|
'<<predicate>>'
|
|
|
|
TESTING OTHER TYPES
|
|
var(1)
|
|
var_supply(0)
|
|
var_supply(1)
|
|
empty
|
|
qwerty(4)
|
|
array([1, 2, 3, 4])
|
|
|