comparison src/corify.sml @ 1663:0577be31a435

First part of changes to avoid depending on C function call argument order of evaluation (omitting normal Ur function calls, so far)
author Adam Chlipala <adam@chlipala.net>
date Sat, 07 Jan 2012 15:56:22 -0500
parents cccf8bf64b30
children 6a4461757829
comparison
equal deleted inserted replaced
1662:edf86cef0dba 1663:0577be31a435
560 result), _) => (true, result) 560 result), _) => (true, result)
561 | _ => (false, result) 561 | _ => (false, result)
562 562
563 fun makeApp n = 563 fun makeApp n =
564 let 564 let
565 val (actuals, _) = foldr (fn (_, (actuals, n)) => 565 val (actuals, _) = foldr (fn (t, (actuals, n)) =>
566 ((L'.ERel n, loc) :: actuals, 566 (((L'.ERel n, loc), t) :: actuals,
567 n + 1)) ([], n) args 567 n + 1)) ([], n) args
568 in 568 in
569 (L'.EFfiApp (m, x, actuals), loc) 569 (L'.EFfiApp (m, x, actuals), loc)
570 end 570 end
571 val unit = (L'.TRecord (L'.CRecord ((L'.KType, loc), []), loc), loc) 571 val unit = (L'.TRecord (L'.CRecord ((L'.KType, loc), []), loc), loc)