|
From: | Rik |
Subject: | [Octave-patch-tracker] [patch #8919] Start of patch to enable visibility attributes for GCC in build system |
Date: | Wed, 16 Dec 2020 16:47:36 -0500 (EST) |
User-agent: | Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36 |
Follow-up Comment #4, patch #8919 (project octave): "Marking only some functions in a public header file as visible seems bad to me. I would find it weird if I could compile something using Octave header files without warning but not link my program because of symbol visibility. So it seems to me that we should mark everything in public header files as visible." I agree, this seems weird to me and I don't think we should do it. "We should only need visibility=hidden for functions that need to be shared between object files in the same shared library (so they can't be declared static within one file) but that are not considered part of the public interface for the shared library. Is that correct?" Isn't the idea to turn everything off (visibility=hidden) and then only selectively re-enable visibility for the symbols that need it? In my mind that required marking the public interface functions AND the functions shared between files which are not public. Any file static function would then be hidden by default and that would be okay. _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/patch/?8919> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/
[Prev in Thread] | Current Thread | [Next in Thread] |