In Blender 2.8, can a object be both masked (Holdout) and Exclude for a given View Layer?
You can now use Object passes in the Compositor, created through the Cryptomatte options in the ViewLayer properties.

In the Compositor, three "CryptoObject" socket will be available, that are transformed to a mask (matte) through the "Cryptomatte" node announcement &amp; demo.

You can then render a Render Layer without the object altogether, and another one with the object, that you will use only to create the matte.