A method for eliminating a hold error from a scan chain configured by connecting a plurality of data holding circuits with wiring. The method includes reordering the data holding circuits using the wiring as a delay element to eliminate hold errors from the scan chain. This method eliminates hold errors from the data holding circuits. This keeps the number of buffer circuits inserted between the data holding circuits small and shortens the processing time required for correcting the hold error.