Hi, I recently wanted to have several XS files in the same directory, and was following the method described in the ExtUtils::MakeMaker FAQ. That worked fine for two XS files, but from the third on, that started dumping core. As far as I could determine this is caused by the called extra boot code popping marks and there soon not being enough marks. By adding a PUSHMARK(SP); before every line added in the BOOT: section things started working properly.
This was for the module Graph::Layout::Aesthetic, which now ends like: BOOT: PUSHMARK(SP); boot_Graph__Layout__Aesthetic__Force__Centripetal(aTHX_ cv); PUSHMARK(SP); boot_Graph__Layout__Aesthetic__Force__NodeRepulsion(aTHX_ cv); PUSHMARK(SP); boot_Graph__Layout__Aesthetic__Force__NodeEdgeRepulsion(aTHX_ cv); ....(more of these)... Please update the FAQ if you agree with my analysis and solution.
