This:
https://graphics.stanford.edu/courses/cs178/applets/gamutmapping.html
helped shape my perspective on rendering intents. The Flash animation was particularly insightful; too bad it no longer plays…
LCMS2 will silently default to an attainable rendering intent if the one specified in the transform call is not available. So, you need to know the contents of both the input and output profiles to know how it’ll go…