--- posix/regcomp.c 2003-11-26 08:54:28.000000000 +0100 +++ posix/regcomp.c 2003-11-27 11:41:00.000000000 +0100 @@ -2191,6 +2191,8 @@ else if (syntax & RE_CONTEXT_INDEP_OPS) { fetch_token (token, regexp, syntax); + if (token->type == OP_CLOSE_SUBEXP || token->type == OP_ALT) + return NULL; return parse_expression (regexp, preg, token, syntax, nest, err); } /* else fall through */