[clang] [C99] Update documentation for scope of variables in loops; NFC (PR #154744)
Aaron Ballman via cfe-commits
cfe-commits at lists.llvm.org
Thu Aug 21 05:17:18 PDT 2025
https://github.com/AaronBallman created https://github.com/llvm/llvm-project/pull/154744
I tracked down the document which changed the way variables are handled in for loops for C99, it was the same document that allowed mixing code and declarations but the editor's report made it seem like the features came from different papers.
This is an extension we backported to C89 but it's sufficiently distinct in the tracking page so I've added it explicitly to the backported features documentation.
>From b20a3bea1cd424c4a62d35e41ccdecc80e5925f7 Mon Sep 17 00:00:00 2001
From: Aaron Ballman <aaron at aaronballman.com>
Date: Thu, 21 Aug 2025 08:14:23 -0400
Subject: [PATCH] [C99] Update documentation for scope of variables in loops;
NFC
I tracked down the document which changed the way variables are handled
in for loops for C99, it was the same document that allowed mixing code
and declarations but the editor's report made it seem like the features
came from different papers.
This is an extension we backported to C89 but it's sufficiently
distinct in the tracking page so I've added it explicitly to the
backported features documentation.
---
clang/docs/LanguageExtensions.rst | 1 +
clang/www/c_status.html | 7 +------
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/clang/docs/LanguageExtensions.rst b/clang/docs/LanguageExtensions.rst
index 1b749ead355c7..3c6c97bb1fa10 100644
--- a/clang/docs/LanguageExtensions.rst
+++ b/clang/docs/LanguageExtensions.rst
@@ -1763,6 +1763,7 @@ Hexadecimal floating constants (N308) C
Compound literals (N716) C99 C89, C++
``//`` comments (N644) C99 C89
Mixed declarations and code (N740) C99 C89
+init-statement in for (N740) C99 C89
Variadic macros (N707) C99 C89
Empty macro arguments (N570) C99 C89
Trailing comma in enum declaration C99 C89
diff --git a/clang/www/c_status.html b/clang/www/c_status.html
index dcff2fc2b1a3e..5b31f97e7a2e5 100644
--- a/clang/www/c_status.html
+++ b/clang/www/c_status.html
@@ -1302,15 +1302,10 @@ <h2 id="c99">C99 implementation status</h2>
<td class="full" align="center">Yes</td>
</tr>
<tr>
- <td>mixed declarations and code</td>
+ <td>mixed declarations and code<br \>new block scopes for selection and iteration statements</td>
<td><a href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n740.htm">N740</a></td>
<td class="full" align="center">Yes</td>
</tr>
- <tr>
- <td>new block scopes for selection and iteration statements</td>
- <td>Unknown</td>
- <td class="full" align="center">Yes</td>
- </tr>
<tr>
<td>integer constant type rules</td>
<td><a href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n629.htm">N629</a></td>
More information about the cfe-commits
mailing list