mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-18 19:03:45 +00:00
Estimated hours taken: 0.5 compiler/intermod.m: Don't append variable numbers to type variables in the `:- pred' or `:- func' declarations for predicates defined in foreign code. The foreign code may contain references to variables such as `TypeInfo_for_T' which will break if `T' is written as `T_1' in the `:- pred' or `:- func' declaration. tests/hard_coded/Mmakefile: tests/hard_coded/intermod_c_code.m: tests/hard_coded/intermod_c_code2.m: tests/hard_coded/intermod_c_code.exp: Test case.
19 lines
288 B
Mathematica
19 lines
288 B
Mathematica
:- module intermod_c_code2.
|
|
|
|
:- interface.
|
|
|
|
:- some [U] pred c_code(T::in, U::out) is det.
|
|
|
|
:- implementation.
|
|
|
|
c_code(T, U) :- c_code_2(T, U).
|
|
|
|
:- some [U] pred c_code_2(T::in, U::out) is det.
|
|
|
|
:- pragma c_code(c_code_2(T::in, U::out),
|
|
"{
|
|
U = T;
|
|
TypeInfo_for_U = TypeInfo_for_T;
|
|
}").
|
|
|