hmmmm okay, never mind. The problem for some reason was that I copied and pasted that macro from another blueprint into the library, so I suppose it had “private objects” embedded into its nodes. Once I made the exact same macro from scratch it worked.
So if anyone comes across the same problem, YES, global macro libraries are possible, just parent them to Object
and make sure you don’t copy and paste macros over.