[racket-dev] Compile cache being incorrect

From: Eric Dobson (eric.n.dobson at gmail.com)
Date: Thu Apr 3 12:41:19 EDT 2014

I have seen multiple times changes in TR not getting properly
propogated to TR programs in my debugging, and I finally have found a
repeatable example.

I am under the impression that if I compile a file and then change a
(transitive) dependency of it, then it should have to be recompiled,
but I am not seeing that.

Steps to reproduce:
git checkout 34c3eed6155765a1e457f69194786575128a13a5
raco setup -D typed-racket typed
raco make pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/succeed/pr12644.rkt
racket -l tests/typed-racket/succeed/pr12644

The test should run successfully and output '(6 7 8 9)

Now make the change (rolling forward one commit):
git checkout d29df205f7bb8347f60c82206b74e3e167e2de24
racket -l tests/typed-racket/succeed/pr12644
raco make pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/succeed/pr12644.rkt

The test runs the first time successfully but fails if you try to
compile it again. Can someone explain why this is not working like I
expect?

Posted on the dev mailing list.