From: Dmitri Gribenko Date: Mon, 4 Feb 2013 10:24:58 +0000 (+0000) Subject: Coding standards: don't use ``inline`` when defining a function in a class X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=b7978cf7010f6874c9648fbecd56fbed5236ff51;p=oota-llvm.git Coding standards: don't use ``inline`` when defining a function in a class definition Current practice is not to use 'inline' in: class Foo { public: inline void bar() { // ... } }; git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174317 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/docs/CodingStandards.rst b/docs/CodingStandards.rst index 74289a8a445..4d66ad75743 100644 --- a/docs/CodingStandards.rst +++ b/docs/CodingStandards.rst @@ -1088,6 +1088,34 @@ flushes the output stream. In other words, these are equivalent: Most of the time, you probably have no reason to flush the output stream, so it's better to use a literal ``'\n'``. +Don't use ``inline`` when defining a function in a class definition +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +A member function defined in a class definition is implicitly inline, so don't +put the ``inline`` keyword in this case. + +Don't: + +.. code-block:: c++ + + class Foo { + public: + inline void bar() { + // ... + } + }; + +Do: + +.. code-block:: c++ + + class Foo { + public: + void bar() { + // ... + } + }; + Microscopic Details -------------------