> On Aug 1, 2021, at 1:56 PM, Mouse <mo...@rodents-montreal.org> wrote: > >>> config_found(CF_VERSION, self, whatever, (const struct cfargs *){ >>> .search = ..., >>> .locators = ..., >>> }) > >> What do you propose should be the behavior if the versions don't match? I h$ > > I thought the mail you replied to said, though admittedly partly by > implication: > >>> config_found() needs to check passed cf_version and convert for old >>> versions. We are still left with a long tail of conversion code in >>> config_found(), but callers Just Work.
Right, "callers Just Work" is carrying a lot of water here. I want to know specifically how people think it should behave. For example: What should happen in the case of a semantic conflict that can't be resolved during conversion? (If you can't tell, I'm a bit annoyed about folks having plenty of energy to express their distaste with one solution, only to float a hand-wavy alternative lacking specifics that also has flaws; sorry, abs@, I'm not trying to pick on you here...). -- thorpej