Oh man. Jetzt, bei den Aufräumarbeiten habe ich das Problem erkannt. Eigentlich hätte ich es schon vorher erkennen müssen, spätestens beim debuggen der veränderten Version. Der Debugger hat es mir ja gezeigt, aber ich hatte es nicht wahrgenommen.
Der Punkt ist, dass regex_t selber eine komplexe Struktur ist. Die kann man nicht so einfach mit einer einzelnen Null initialisieren.
Ja, war es nicht das, was ich geschrieben hatte? ☺