[clang] [Sema] Provide `-fno-/-fvisibility-global-new-delete` option (PR #75364)

via cfe-commits cfe-commits at lists.llvm.org
Wed Dec 20 04:42:24 PST 2023


bd1976bris wrote:

Thanks for the responses.

> The meaning that we want to make clear is that this toggles the special behavior of forcing the visibility of these symbols despite all the other mechanisms that usually control visibility for all other symbols.

Agreed. I'm in favour of your suggestion of `-f[no-]forced-global-new-delete-visibility`. Including "forced" in the option name makes it clear that something unusual is going on here and hints that this is going to take precedence over other sources of visibility. I did consider that it might be better to rearrange your suggested option name a bit to `-f[no-]visibility-global-new-delete-forced` to group with other visibility options that start with `-fvisibility`, but `-f[no-]forced-global-new-delete-visibility` is much clearer.  @petrhosek I did consider `-f[no-]visibility-attribute-global-new-delete` but that naming is possibly tied a bit too strongly to the current implementation in the complier - so I think I like the `forced` suggestion better?

>  (The `=...` variant of the positive form would permit forcing to a different visibility than `default`, though I'm not sure there's a real need for that capability since in `-fno-forced-...` state the usual pragmas et al can arrange for that.)

Indeed and the use of the usual pragmas etc is preferable, IMO, as users are already familiar with those - as opposed to the effects of an unusual/niche option.

https://github.com/llvm/llvm-project/pull/75364


More information about the cfe-commits mailing list