[m-dev.] Update library pragma C code
Thomas Charles CONWAY
conway at cs.mu.OZ.AU
Mon Aug 3 10:16:45 AEST 1998
Peter Schachte, you write:
> The reason I mention this now is that I was thinking that the current
> may_call_mercury/will_not_call_mercury labeling is really a bit too limited,
> and while you're monkeying with this stuff anyway would be a good time to
> generalize it a bit more. I think it would be better if that sort of info
> were given as a list of "tags", so that the set of possible tags could be
> expanded with the evolution of Mercury. I'd like to propose the addition of
> may_trail/will_not_trail as the first extension.
In my uncommitted changes relating to io__fork/4 (which will become
something_else__fork/4), I've added functionality to allow a list of
attributes to be attached to c code pragmas. Eg:
pragma c_code(foo(...), [will_not_call_mercury, threadsafe], "...").
It would be a relatively minor change to add other flags
(eg may_need_trailing) or whatever. Of course, getting the compiler to
make use of that would be a bigger task.
Thomas Conway <conway at cs.mu.oz.au>
Nail here  for new monitor. )O+
More information about the developers