https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122902
--- Comment #1 from Damian Rouson <damian at archaeologic dot codes> --- There are several interesting quirks in the above reproducer: 1. In the main program, replacing "7" with a smaller number eliminates the set fault at least for the values that I tried. 2. Removing the one submodule and moving the procedure definition it contains to the parent module eliminates the set fault. 3. I saw numerous ICEs as well as several suspected rejects-valid errors along the way in developing the reproducer so I suspect that I might have observed several additional bugs, but I didn't attempt to develop separate reproducers for each one. 4. Making the actual arguments array constructors (and deleting the lines that declare and define the corresponding intermediate variables "inputs" and "outputs") also eliminates the seg fault. Possibly item 4 lights the way to a simple workaround, but I have to inspect the original code to see if that's feasible. The reproducer is of course a lot simpler than the original code. In the original code, those actual arguments are themselves dummy arguments in the procedure that contains the desired assignment.
