%---------------------------------------------------------------------------%
% vim: ts=4 sw=4 et ft=mercury
%---------------------------------------------------------------------------%

:- module y.
:- interface.

:- import_module io.

:- pred main(io::di, io::uo) is det.

:- implementation.

:- import_module bool.

:- type thing
    --->    thing(
                t1 :: bool,
                t2 :: bool,
                t3 :: int,
                t4 :: bool,
                t5 :: bool,
                t6 :: bool
            ).

main(!IO) :-
    A = thing(no, no, 42, yes, yes, yes),
    update_test(no, A, B),
    io.write_line(B, !IO).

:- pred update_test(bool::in, thing::in, thing::out) is det.
:- pragma no_inline(update_test/3).

update_test(N, A, B) :-
    B = A ^ t6 := N.
