On Mon, 2021-08-23 at 22:36 -0400, NightStrike wrote:
> On Mon, Aug 23, 2021 at 8:16 PM NightStrike <nightstr...@gmail.com>
> wrote:
> > On Mon, Aug 23, 2021 at 4:09 PM David Malcolm <dmalc...@redhat.com>
> > wrote:
> > > Which tests are failing, specifically?
> 
> Here's the full list of all 37 failures that fail for any reason:
> 
> FAIL: gcc.dg/analyzer/dot-output.c dg-check-dot dot-output.c.state-
> purge.dot
> FAIL: gcc.dg/analyzer/malloc-callbacks.c (test for excess errors)
> FAIL: gcc.dg/analyzer/pr98969.c  (test for warnings, line 17)
> FAIL: gcc.dg/analyzer/pr98969.c (test for excess errors)
> FAIL: gcc.dg/analyzer/pr99716-1.c  (test for warnings, line 25)
> FAIL: gcc.dg/analyzer/pr99716-2.c (test for excess errors)
> FAIL: gcc.dg/analyzer/pr99774-1.c (test for excess errors)
> FAIL: gcc.dg/analyzer/sensitive-1.c  (test for warnings, line 16)
> FAIL: gcc.dg/analyzer/sensitive-1.c warning (test for warnings, line
> 17)
> FAIL: gcc.dg/analyzer/sensitive-1.c event (test for warnings, line
> 17)
> FAIL: gcc.dg/analyzer/sensitive-1.c  (test for warnings, line 23)
> FAIL: gcc.dg/analyzer/sensitive-1.c  (test for warnings, line 24)
> FAIL: gcc.dg/analyzer/sensitive-1.c event (test for warnings, line
> 24)
> FAIL: gcc.dg/analyzer/sensitive-1.c  (test for warnings, line 30)
> FAIL: gcc.dg/analyzer/sensitive-1.c warning (test for warnings, line
> 31)
> FAIL: gcc.dg/analyzer/sensitive-1.c event (test for warnings, line
> 31)
> FAIL: gcc.dg/analyzer/sensitive-1.c  (test for warnings, line 44)
> FAIL: gcc.dg/analyzer/sensitive-1.c  (test for warnings, line 50)
> FAIL: gcc.dg/analyzer/sensitive-1.c  (test for warnings, line 55)
> FAIL: gcc.dg/analyzer/sensitive-1.c  (test for warnings, line 60)
> FAIL: gcc.dg/analyzer/sensitive-1.c  (test for warnings, line 61)
> FAIL: gcc.dg/analyzer/signal-1.c  (test for warnings, line 13)
> FAIL: gcc.dg/analyzer/signal-1.c  (test for warnings, line 25)
> FAIL: gcc.dg/analyzer/signal-2.c  (test for warnings, line 16)
> FAIL: gcc.dg/analyzer/signal-2.c  (test for warnings, line 28)
> FAIL: gcc.dg/analyzer/signal-3.c  (test for warnings, line 10)
> FAIL: gcc.dg/analyzer/signal-3.c  (test for warnings, line 21)
> FAIL: gcc.dg/analyzer/signal-4a.c  (test for warnings, line 15)
> FAIL: gcc.dg/analyzer/signal-4a.c expected multiline pattern lines
> 33-75 not found: <snip>
> FAIL: gcc.dg/analyzer/signal-6.c  (test for warnings, line 11)
> FAIL: gcc.dg/analyzer/signal-6.c  (test for warnings, line 16)
> FAIL: gcc.dg/analyzer/signal-registration-loc.c  (test for warnings,
> line 15)
> FAIL: gcc.dg/analyzer/signal-registration-loc.c  (test for warnings,
> line 21)
> FAIL: gcc.dg/analyzer/strndup-1.c (test for excess errors)
> FAIL: gcc.dg/analyzer/zlib-5.c (test for excess errors)
> 
> Of those, here is what I diagnosed so far:
> pr98969.c:9:19: warning: cast to pointer from integer of different
> size [-Wint-to-pointer-cast]
> * This fails because the function arguments are "long int", and that
> tries to hold a pointer.  It should be uintptr_t or similar.
> 
> pr98969.c:17:3: warning: double-'free' of '*((struct foo *)(long long
> int)i).expr' [CWE-415] [-Wanalyzer-double-free]
> * My guess is that the regex is not right for running under wine,
> because that shouldn't be an excess error.
> 
> pr99716-2.c:13:30: warning: implicit declaration of function
> 'random';
> did you mean 'rand'? [-Wimplicit-function-declaration]
> * The warning is probably right here.  The C function is rand().
> Where does random() come from?
> 
> pr99774-1.c:12:14: warning: conflicting types for built-in function
> 'calloc'; expected 'void *(long long unsigned int,  long long
> unsigned
> int)' [-Wbuiltin-declaration-mismatch]
> * size_t issue
> 
> strndup-1.c:9:13: warning: incompatible implicit declaration of
> built-in function 'strndup' [-Wbuiltin-declaration-mismatch]
> * This function doesn't exist on windows.  So, either we add it to
> libmingwex if it isn't already there and then link that library in to
> the test, or just mark it as unsupported.  I'd probably prefer the
> former, but it's not up to me.
> 
> zlib-5.c:10:15: warning: conflicting types for built-in function
> 'strlen'; expected 'long long unsigned int(const char *)'
> [-Wbuiltin-declaration-mismatch]
> zlib-5.c:16:14: warning: conflicting types for built-in function
> 'calloc'; expected 'void *(long long unsigned int,  long long
> unsigned
> int)' [-Wbuiltin-declaration-mismatch]
> * size_t issue
> 
> gcc.dg/analyzer/gzio-3.c:
> gcc.dg/analyzer/gzio-3a.c:
> * For some reason, these work.  Maybe fread() isn't a builtin? Maybe
> there's a way to make gcc emit a warning when fread() is redefined
> differently.

Thanks for working through the above.

Do you have an account in GCC's bugzilla?  If so, please can you turn
this into a bug report there.  Is there a recipe for testing this via
wine?  (it's been almost 20 years since I did any Windows coding...)

Dave


Reply via email to