This is implementation-specific behavior--some regcomp(3) will reject duplicate repetition characters (BSD), others will try to support them (Glibc) but may allocate excessive amounts of memory.
Avoids a problem with the fuzzer creating large regular expressions that blow up the glibc regcomp().