regcomp işlevi düzenli ifadeyi derleyebilirse, derlenmiş şablonu
*şablon'a yerleştirir ve sıfır değeriyle döner.
syntax alanı hariç (yukarıda açıklandığı gibi ayarlanır). Ayrıca,
GNU derleme işlevinin yaptığı benzer bir yolla aynı alanları ayarlar.
- REG_BADRP
Örneğin, a** içindeki ardışık yineleme işleçleri ** geçersizdir. Başka bir örnek olarak; şayet sözdizimi, genişletilmiş düzenli ifade sözdizimi ise, * içinde yapacak hiçbir şeyi olmayan yineleme işleci * geçersizdir.
- REG_BADBR
Örneğin, a\{-1 içindeki -1 tekrar sayısı olarak geçersizdir.
- REG_EBRACE
Örneğin, a\{1 ifadesinde sınırlı sayıda yineleme bitirme işleci eksiktir.
- REG_EBRACK
Örneğin, [a ifadesine eşleşme listesi bitirme işleci eksiktir.
- REG_ERANGE
Örneğin, [z-a] aralığında aralık sonu olan z harf sıralaması bakımından başlangıç olan a'dan küçük yapılmıştır ve aralık ifadesi geçersizdir. Ayrıca, [[:alpha:]-|] aralığında, aralığın başlangıcı olarak [:alpha:] karakter sınıfıyla aralık yine geçersizdir.
- REG_ECTYPE
Örneğin, [[:foo:] içindeki foo karakter sınıfı ismi geçersizdir.
- REG_EPAREN
Örneğin, a\) ifadesinde grup başlatma işleci ve \(a ifadesinde grup sonlandırma işleci eksiktir.
- REG_ESUBREG
Örneğin, \(a\)\2 ifadesinde grup adresleme işleci \2 olmayan bir grubu gösterdiğinden geçersizdir.
- REG_EEND
Düzenli ifade özel bir hata koduna sebep olmuyorsa döner.
- REG_EESCAPE
Örneğin, a\ ifadesi içindeki \ tıpkı \ ifadesindeki gibi geçersizdir.
- REG_BADPAT
Örneğin, genişletilmiş düzenli ifade sözdiziminde, a()b ifadesi içindeki boş grup () geçersizdir.
- REG_ESIZE
Bir düzenli ifade 65536 bayttan daha büyük bir şablon tamponu gerektiriyorsa döner.
- REG_ESPACE
Bir düzenli ifade bellek taşmasına sebep oluyorsa döner.