The wrong secondary particle could be created here http://www-geant4.kek.jp/lxr/source/processes/hadronic/models/particle_hp/src/G4ParticleHPFinalState.cc#L122 since theProjectile is not necessarily a neutron. Also, these if-blocks http://www-geant4.kek.jp/lxr/source/processes/hadronic/models/particle_hp/src/G4ParticleHPFinalState.cc#L76 http://www-geant4.kek.jp/lxr/source/processes/hadronic/models/particle_hp/src/G4ParticleHPFinalState.cc#L146 do not check if theProjectile is He3.
The method was originally designed for neutron projectile. For other projectiles, we recommend to set “G4PARTICLEHP_DO_NOT_ADJUST_FINAL_STATE” environment variable and under the setting, the method never called. We have not yet decided how we treat this problem.
This problem appears to have been fixed in Geant4 10.4