Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MPR#4958: negative flags #224

Open
damiendoligez opened this issue Mar 3, 2017 · 4 comments
Open

MPR#4958: negative flags #224

damiendoligez opened this issue Mar 3, 2017 · 4 comments

Comments

@damiendoligez
Copy link
Member

damiendoligez commented Mar 3, 2017

PR transferred from https://caml.inria.fr/mantis/view.php?id=4958
[original reporter: @ygrek]

Provide the ability to specify negative flags, e.g.

flag_and_dep ["tag1","tag2"] ~not:["tag3"] cmd;

cmd is activated if tag1 and tag2 are set, and tag3 is not set

It will make the fix for #225 (MPR#4943) more simple and robust.

@gasche
Copy link
Member

gasche commented Mar 3, 2017

I am worried of the unplanned consequences of losing the monotonicity guarantee on flag declaration semantics. I would rather not do this unless there is evidence we cannot do without.

@gasche gasche closed this as completed Mar 3, 2017
@ygrek
Copy link

ygrek commented Mar 3, 2017

can you elaborate more on monotonicity guarantee please?

@gasche
Copy link
Member

gasche commented Mar 3, 2017

Currently, we have the guarantee that adding more tags to a file will only enable more flags to be applied when compiling the file.

That said, thinking about it more, it is not clear-cut that we rely on it today. One situation I had in mind was the ability to process tags in several batches instead of just one, in fact but this does not affect flag declarations that are computed at build time, not a tag-declaration time. Reopening.

@gasche gasche reopened this Mar 3, 2017
@ygrek
Copy link

ygrek commented Mar 3, 2017

I also think this is related to the tags (not) being delarative - e.g. #153

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants