Skip Montanaro <s...@pobox.com> wrote:
> I do have one question though. Suppose you encounter a compiler that
> doesn't understand the inline keyword, so you choose the static
> declaration as Kristján suggested. The resulting Python executable
> should be functionally correct, but if the optimizer doesn't happen to
> inline a given static function you might be stuck with some bad
> performance across-the-board (if it never inlines, or doesn't inline
> where we really need it to), or only under some circumstances (as a
> hypothetical example, inlining in dictobject.c, but not in ceval.c).
> Is there a configurable way to tell if a compiler will inline
> functions which are declared static, and possibly under what
> conditions they might not? It might still be necessary to maintain
> macros for those platforms.

I think that all modern compilers can handle "static inline" in header
files.

If you have a compiler that cannot, chances are that the platform is horribly
outdated and this particular performance issue will be relatively benign
compared to other ones.


Stefan Krah



_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to