The code snippets were not being displayed. This commit fixes the bug.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@252849
91177308-0d34-0410-b5e6-
96231b3b80d8
The ``not_tail_called`` attribute prevents tail-call optimization on statically bound calls. It has no effect on indirect calls. Virtual functions, objective-c methods, and functions marked as ``always_inline`` cannot be marked as ``not_tail_called``.
For example, it prevents tail-call optimization in the following case:
+
.. code-block: c
+
int __attribute__((not_tail_called)) foo1(int);
int foo2(int a) {
}
However, it doesn't prevent tail-call optimization in this case:
+
.. code-block: c
+
int __attribute__((not_tail_called)) foo1(int);
int foo2(int a) {
}
Marking virtual functions as ``not_tail_called`` is an error:
+
.. code-block: c++
+
class Base {
public:
// not_tail_called on a virtual function is an error.