I've now uninstalled B::H::OP::C and even ExtUtils::Depends with cpanp and reinstalled them both, but I'm still hitting the same problem.
It does look a lot like rt://45224. I've read through this and also read the related bug in the Devel::Declare queue
rt://40471, but I just don't know enough about C to really grok what either of the modules are supposed to be doing.
I'm going to have leave it for now (and start another project without MooseX::Declare), but will have a look later to see if there's an older version of Devel::Declare without the troublesome dependencies.