On Tue, Oct 08, 2024 at 10:11:24PM +0200, Alexandre Ferrieux wrote: > Hi, > > On 08/10/2024 21:55, Gavin Smith wrote: > > > > Yes the locale.h file (generated from locale.in.h) should not exist > > on release/7.1. locale.in.h is tracked in git but locale.h is not so > > is not removed by "git switch". I'll have to find some way of deleting > > this file and others when I switch branches. > > On my system, git switch (or checkout) "touches" all the files it affects, so > presumably the dependencies of locale.h (like locale.in.h) , if part of the > difference, should all trigger Make. Why don't they ?
In this case locale.in.h is not present on release/7.1. Hence "git switch" removes the file. locale.h is left as an untracked file with no rule in the Makefile to build or remove it. When a source code file includes "locale.h", it picks up this file present in the directory with the othe gnulib headers, instead of the system version.