>>760
こんなこと行ったら、絶対反感買うと思うけど、
上手く組み合わせ爆発を抑えてテストして行けば、割と漏れが少なくテストが出来る
かも知れないが、コンパイラの場合、丁寧にそれをすると、結構多くバグが出て、
判明しているバグを全て取り除くには途方も無い時間が掛かりがち。
また、そのテストを用意するのもかなり時間がかかる。
そもそも、>>762の言っていることはわかるが、コンパイラの用に規模の大きな
プログラムになると、プログラム中の if 文を丁寧に調べ上げて、それで組み合わせ爆発
を抑えたテスト法を考えることすら時間が掛かり、そして、組み合わせ爆発を抑えた
としても、まだ組み合わせの量が膨大で、それに対するテストプログラムを作ることも、
すべてが途方も無い時間が掛かる。

で、どうするかというと、現実的なプログラムを沢山書いて、それで特に問題ない
程度にバグが無い状態にする、という現実解がある。
そんなんでいいのか、と言われると良くは無いと思うが、完全にテストをして、
完全にバグを取ることを目指すと、莫大な時間を掛けても完成しないかも知れない。