<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/82149>82149</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang] False-positive with Wunneeded-internal-declaration on _Generic or static?
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang:diagnostics
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
hstk30-hw
</td>
</tr>
</table>
<pre>
https://godbolt.org/z/ec46Ws87E
```
#define TEST(T) _Generic((T), \
char* : "String", \
int* : "Integer", \
default : "Others")
static int *A = 0;
extern void foo(int *);
int main() {
TEST(A);
return 0;
}
```
Varable `A` is used in marco `TEST`, but warning it.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx0k0FvpDgQhX9NcSl1y5SBhgOHTjqs9rSHRJvjyuBq8I7bjmyTzMyvH0Ezk84og5AR-Ktnv_JDxWhGx9xCeQflKVNzmnxop5i-SLGb3rLe62_tlNJLBHkE6oC60eve27T3YQTqvgN1PBTVc6wPDyBOII7bWIntvr6S1Hw2jvHp4fEJqH4CavC_v9hxMANQvX0Cukco769FuF3DpALQEUEeEYgeUzBuBKJPYePSDfu3Szxy-BOs-axmm37S_6SJQ1zh5tZMTCqZYZFGoOMREeQJBci7W4i_Jg4OX73RePYeqN74RewjukxclHGr7wbhcPe-ra0_H6owcJqDu13ycPq8z-v4rwqqt4xQrQCaiHNkjcbhRYXBLxPrOpVY2tLPCd9UcMaNaNL-qpHpVupGNirjNj-ImmReVjKb2rySjVKlylUtBioK1WtVFoU-y75oqqLKTEuCCkF5LYqiEnKfH3RZDfqgmVVVUg6F4Isydm_t62UJUmZinLmtKS-azKqebVwjSTRY5UaQR23U6HxMZliPpzxloV2qd_08RiiENTHFd71kkl1Tfa0vT9gpG3n34qNJ5pXxzaQJn2fnmDXrnXHL2Sm70zxYFVQy3qF3vwKKPuA1BCC7bA7295_CpGnu94O_AHXLLrbH7iX4_3lIQN1qMQJ1q8sfAQAA__9RNf0L">