A design should not contain a combinational loop, which is combinational logic that drives itself without being synchronized by a register. The following image shows an example of a combinational loop:
These combinational loops can cause significant stability and reliability problems in a design. For example, because the behavior of a combinational loop often depends on the relative propagation delays of the combinational loop's logic, and because design tools experience difficulties when handling combinational loops, the combinational loop after fitting may not function as it was originally intended to function in the design.