<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-legacy-support.
</pre>
<p><a href="https://github.com/macports/macports-legacy-support/commit/0dd04b1eb13ad86e1eebd97e05e07889fd03267e">https://github.com/macports/macports-legacy-support/commit/0dd04b1eb13ad86e1eebd97e05e07889fd03267e</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 0dd04b1eb13ad86e1eebd97e05e07889fd03267e
</span>Author: Fred Wright <fw@fwright.net>
AuthorDate: Wed Feb 19 20:12:18 2025 -0800
<span style='display:block; white-space:pre;color:#404040;'> Check for "shadowing" warnings.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> This enables -Wshadow in test builds to check for "shadowing"
</span><span style='display:block; white-space:pre;color:#404040;'> warnings.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> In test_scandir, some compilers give warnings regarding the "conflict"
</span><span style='display:block; white-space:pre;color:#404040;'> between the use of 'dirname' as a function parameter and as a function
</span><span style='display:block; white-space:pre;color:#404040;'> name itself. This has been observed with gcc 4.2. Later compilers
</span><span style='display:block; white-space:pre;color:#404040;'> are probably smart enough to distinguish function arguments from
</span><span style='display:block; white-space:pre;color:#404040;'> functions.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Placing the libgen.h include before dirent.h tests this case.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> TESTED:
</span><span style='display:block; white-space:pre;color:#404040;'> Produces shadowing warnings without the relevant fixes; no warnings
</span><span style='display:block; white-space:pre;color:#404040;'> with the fixes.
</span>---
Makefile | 2 +-
xtest/test_scandir.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/Makefile b/Makefile
</span><span style='display:block; white-space:pre;color:#808080;'>index 0270c63..813fc0e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/Makefile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/Makefile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -82,7 +82,7 @@ CP ?= /bin/cp
</span>
# Directory for temporary test files
TEST_TEMP ?= tst_data
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TESTCFLAGS = $(ALLCFLAGS) '-DTEST_TEMP="$(TEST_TEMP)"'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TESTCFLAGS = -Wshadow $(ALLCFLAGS) '-DTEST_TEMP="$(TEST_TEMP)"'
</span>
MKINSTALLDIRS = install -d -m 755
INSTALL_PROGRAM = install -c -m 755
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/xtest/test_scandir.c b/xtest/test_scandir.c
</span><span style='display:block; white-space:pre;color:#808080;'>index 7524889..b79610a 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/xtest/test_scandir.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/xtest/test_scandir.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -33,8 +33,8 @@
</span> #define _MACPORTS_LEGACY_COMPATIBLE_SCANDIR 1
#endif
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <libgen.h> /* Include this before dirent to check "shadowing" */
</span> #include <dirent.h>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <libgen.h>
</span> #include <stddef.h>
#include <stdio.h>
/* Check the new public definition. */
</pre><pre style='margin:0'>
</pre>