Share via


_INTRINSIC_IS_SAFE

9/7/2007

This macro determines if a specified intrinsic function is instantiated independent of the OS.

Syntax

_INTRINSIC_IS_SAFE(arg)

Parameters

  • Arg
    [in] The name of the intrinsic function of interest.

Return Value

A nonzero return value indicates that the specified intrinsic does require invocation of an OS feature.

Remarks

An intrinsic function expansion sometimes requires the compiler to invoke an operating system feature because the compiler itself cannot perform the particular task. Because the compiler cannot control whether the OS provides the required feature, such an intrinsic is considered unsafe.

For example, the __trap intrinsic assumes that an OS handler is available to take an action. The compiler cannot guarantee that such a handler is present, so the __trap intrinsic is considered unsafe.

See Also

Other Resources

Intrinsic Functions for Device Compilers