diff options
author | Chris Lattner <sabre@nondot.org> | 2008-12-12 18:00:51 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-12-12 18:00:51 +0000 |
commit | 42b83dde7c700b34f9435ad746984169888ae705 (patch) | |
tree | c34dfd66d3b7c1e0524e12b36a8d8c923c7c16b8 /docs/InternalsManual.html | |
parent | 9d35097bc0fefb2f77638be513cac72d1c09d840 (diff) |
Implement the final (hopefully) wrinkle to i-c-e + builtin_constant_p
processing: it allows arbitrary foldable constants as the operand of ?: when
builtin_constant_p is the condition.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60954 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/InternalsManual.html')
-rw-r--r-- | docs/InternalsManual.html | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/docs/InternalsManual.html b/docs/InternalsManual.html index 5d32d8df6d..531e576758 100644 --- a/docs/InternalsManual.html +++ b/docs/InternalsManual.html @@ -1155,7 +1155,8 @@ interacts with constant evaluation:</p> constant expression) if the operand is any evaluatable constant. As a special case, if <tt>__builtin_constant_p</tt> is the (potentially parenthesized) condition of a conditional operator expression ("?:"), only - the true side of the conditional operator is considered.</li> + the true side of the conditional operator is considered, and it is evaluated + with full constant folding.</li> <li><b><tt>__builtin_choose_expr</tt></b>: The condition is required to be an integer constant expression, but we accept any constant as an "extension of an extension". This only evaluates one operand depending on which way the |