Found by the post-merge broadcast audit (two independent passes converged). s_mpi_decompose_computational_domain (src/common/m_mpi_common.fpp:1035-1049) reads recon_type and (under igr) igr_order on ALL ranks to shape the processor-topology factorization constraints — but post_process broadcasts neither, and assigns defaults rank-0-only. Worse, post never default-initializes igr_order at all, so non-root ranks read an uninitialized integer for IGR post runs; for MUSCL cases the rank-divergent recon_order can feed inconsistent dims to MPI_CART_CREATE. Pre-existing: the old hand-written post broadcast list never had them; the registry-generation work (#1552) preserved the call set faithfully but its _POST_BCAST_EXCLUDE comment wrongly claimed all six exclusions are rank-0-only — that classification error is ours (@sbryngelson). Fix: broadcast both in post + give igr_order its missing default.
Found by the post-merge broadcast audit (two independent passes converged).
s_mpi_decompose_computational_domain(src/common/m_mpi_common.fpp:1035-1049) readsrecon_typeand (underigr)igr_orderon ALL ranks to shape the processor-topology factorization constraints — but post_process broadcasts neither, and assigns defaults rank-0-only. Worse, post never default-initializesigr_orderat all, so non-root ranks read an uninitialized integer for IGR post runs; for MUSCL cases the rank-divergentrecon_ordercan feed inconsistent dims toMPI_CART_CREATE. Pre-existing: the old hand-written post broadcast list never had them; the registry-generation work (#1552) preserved the call set faithfully but its_POST_BCAST_EXCLUDEcomment wrongly claimed all six exclusions are rank-0-only — that classification error is ours (@sbryngelson). Fix: broadcast both in post + giveigr_orderits missing default.