On Wed, 27 Jul 2022, Thomas Guillem wrote:

DECLARE_ALIGNED, DECLARE_ASM_ALIGNED, and DECLARE_ASM_CONST will include
attribute_visibility_hidden.

Hmm, I'm not entirely sure that we should do that - if we should add such extra meaning to those macros.

How many symbols would it need to be applied on, if we don't apply it via these macros?

I was a bit concerned that DECLARE_ALIGNED could be used for e.g. stack local variables (where visibility doesn't make sense) - but we do have LOCAL_ALIGNED_* macros for that instead, so maybe it could work this way after all?

Do note, that these are currently defined in libavutil/mem.h, but after the next major bump they'll be in libavutil/mem_internal.h. Currently their contents are duplicated in the both, so any changes would need to apply to both.

I see that libavutil/mem.h (which is a public installed header) doesn't explicitly include libavutil/internal.h, so if someone uses those macros without including libavutil/internal.h, attribute_visibility_hidden would be undefined.

After the next bump, when these macros are entirely internal, this issue is much clearer (and at that point, I think it could be a bit more tolerable to extend their meaning to include visibility).

// Martin

_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".

Reply via email to