 	   ((equal (char-after) ?\{)
             ;; block type returned based on outer constraint { or inner
 	    (if (verilog-at-constraint-p)
-                (cond (inconstraint (throw 'nesting 'constraint))
-                      (t            (throw 'nesting 'statement)))))
+                (cond (inconstraint
+                       (beginning-of-line nil)
+                       (skip-chars-forward " \t")
+                       (throw 'nesting 'constraint))
+                      (t
+                       (throw 'nesting 'statement)))))
 	   ((equal (char-after) ?\})
 	    (let (par-pos
                   (there (verilog-at-close-constraint-p)))

	(not (or
	      ;; stop if beginning of buffer
	      (bobp)
	      ;; stop if we find a ;
	      (= (preceding-char) ?\;)
	      ;; stop if we see a named coverpoint

					    (setq str (concat " // else: !assert " str ))
					    (throw 'skip 1)))))))))

			     (; always, always_comb, always_latch w/o @...
			      (match-end 5)
			      (goto-char (match-end 0))
			      (setq there (point))
			      (setq err nil)
