[m-dev.] diff: inlining and unbound typevars
Fergus Henderson
fjh at cs.mu.oz.au
Fri May 30 16:47:44 AEST 1997
> + % Update a map from tvar to var, using the type substititon to
> + % rename tvars and a variable substition to rename vars.
> + %
> + % If tvar maps to a another type variable, we keep the new
> + % variable, if it maps to a type, we remove it from the map.
...
> +apply_substitutions_to_var_map(VarMap0, TSubst, Subst, VarMap) :-
> + % optimize the common case of empty substitutions
> + ( map__is_empty(Subst) ->
> + VarMap = VarMap0
> + ;
This optimization does not satisfy the documented spec:
% If tvar maps to a another type variable, we keep the new
% variable, if it maps to a type, we remove it from the map.
--
Fergus Henderson <fjh at cs.mu.oz.au> | "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh> | of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3 | -- the last words of T. S. Garp.
More information about the developers
mailing list