From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail From: Simon Wright Newsgroups: comp.lang.ada Subject: Re: GNAT corrupted builds with below second changes Date: Sun, 22 Apr 2018 08:31:04 +0100 Organization: A noiseless patient Spider Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: reader02.eternal-september.org; posting-host="8a38cb94ad0539ac39e98a2026d96147"; logging-data="7412"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19MSQ04qxqsN/L8fFo5bq2SIAQUNHypano=" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (darwin) Cancel-Lock: sha1:c1C/RbMm54OPxQYAwAqbi2T4qX0= sha1:GOWIu/kYIMJ0Fd8vbaKcZdZm8yA= Xref: reader02.eternal-september.org comp.lang.ada:51668 Date: 2018-04-22T08:31:04+01:00 List-Id: "Alejandro R. Mosteo" writes: > I've observed that gprbuild seems to not detect that a file is changed > if less than a second has elapsed. I will guess here that the > timestamp being used has second precision. Looking at a .ali file, the dependencies are recorded in lines like D ada.ads 20170106103348 76789da1 ada%s where 20170106103348 is the date/time to 1 second precision, and 76789da1 is a checksum of the file's contents. I'd imagine that gprbuild looks at the timestamp first; not sure about the checksum, but certainly needed for -m processing (only recompile if semantically modified).