On MacOS 15.5 with the cranelift codegen backend from rustc 1.90.0-nightly (a84ab0ce6 2025-07-06), #[ctor] does not trigger on module initialization. It seems to be limited to MacOS, I also tested on Linux with cranelift and it worked fine.
See also: dtolnay/typetag#35 (comment)