Avoid warning from C compiler about mismatched pointer types.

Avoid warning from C compiler about mismatched pointer types
when the --optimise-constructor-last-call optimisation is enabled
in high-level C grades.

compiler/ml_unify_gen.m:
	Cast the pointer of a cell field to the type of the address
	variable that will hold it.
Provide Mercury-level access to the trail.

Add a module that provides Mercury-level access to the function trail to the
extras distribution.  This module was originally written by Mark Brown as part
of the G12 platform's common library.  This verison has been lightly modified
to remove some G12-specific stuff.

extras/trail/trail.m:
	Add the new new module.

extras/trail/mercury_trail.m:
	Wrapper module to ensure that we get the correct library name.

extras/trail/Mercury.options:
	Only install this library in C grades that support trailing.

NEWS:
	Announce the addition.