diff --git a/src/dfa.c b/src/dfa.c
index 3b0d861..13dbbdc 100644
--- a/src/dfa.c
+++ b/src/dfa.c
@@ -694,7 +694,6 @@ parse_bracket_exp (void)
           continue;
         }
 
-      setbit_case_fold (c, ccl);
 #ifdef MBS_SUPPORT
       /* Build normal characters.  */
       if (MB_CUR_MAX > 1)
@@ -709,6 +708,8 @@ parse_bracket_exp (void)
                                        work_mbc->nchars + 1);
                   work_mbc->chars[work_mbc->nchars++] = wc;
                 }
+              else
+                setbit_case_fold (c, ccl);
 #ifdef GREP
               continue;
 #else
@@ -722,6 +723,8 @@ parse_bracket_exp (void)
                                    work_mbc->nchars + 1);
               work_mbc->chars[work_mbc->nchars++] = wc;
             }
+          else
+            setbit_case_fold (c, ccl);
 #endif
         }
     }
