gmp-6.3.0-3.fc43

List of Findings

Error: COMPILER_WARNING: [#def1]
gmp-6.3.0/conftest.s: scope_hint: Assembler messages
gmp-6.3.0/conftest.s:2: Error: no such instruction: `somelabel'

Error: COMPILER_WARNING: [#def2]
gmp-6.3.0/conftest.s: scope_hint: Assembler messages
gmp-6.3.0/conftest.s:3: Error: unknown pseudo-op: `.def'

Error: COMPILER_WARNING: [#def3]
gmp-6.3.0/conftest.s:4: Error: unknown pseudo-op: `.scl'

Error: COMPILER_WARNING: [#def4]
gmp-6.3.0/conftest.s:5: Error: Missing symbol name in directive

Error: COMPILER_WARNING: [#def5]
gmp-6.3.0/conftest.s:5: Error: unrecognized symbol type "32"

Error: COMPILER_WARNING: [#def6]
gmp-6.3.0/conftest.s:6: Error: unknown pseudo-op: `.endef'

Error: COMPILER_WARNING (CWE-1164): [#def7]
gmp-6.3.0/cxx/ismpf.cc: scope_hint: In function 'std::istream& operator>>(std::istream&, mpf_ptr)'
gmp-6.3.0/cxx/ismpf.cc:139:5: warning[-Wunused-label]: label 'fail' defined but not used
#  139 |     fail:
#      |     ^~~~
#  137|     else
#  138|       {
#  139|->     fail:
#  140|         i.setstate(ios::failbit); // read failed
#  141|       }

Error: COMPILER_WARNING (CWE-563): [#def8]
gmp-6.3.0/cxx/osdoprnti.cc: scope_hint: In function 'std::ostream& __gmp_doprnt_integer_ostream(std::ostream&, doprnt_params_t*, char*)'
gmp-6.3.0/cxx/osdoprnti.cc:54:9: warning[-Wunused-but-set-variable]: variable 'ret' set but not used
#   54 |   int   ret;
#      |         ^~~
#   52|     struct gmp_asprintf_t   d;
#   53|     char  *result;
#   54|->   int   ret;
#   55|   
#   56|     /* don't show leading zeros the way printf does */

Error: COMPILER_WARNING (CWE-563): [#def9]
gmp-6.3.0/cxx/osmpf.cc: scope_hint: In function 'std::ostream& operator<<(std::ostream&, mpf_srcptr)'
gmp-6.3.0/cxx/osmpf.cc:51:9: warning[-Wunused-but-set-variable]: variable 'ret' set but not used
#   51 |   int   ret;
#      |         ^~~
#   49|     struct gmp_asprintf_t   d;
#   50|     char  *result;
#   51|->   int   ret;
#   52|   
#   53|     __gmp_doprnt_params_from_ios (&param, o);

Error: COMPILER_WARNING (CWE-563): [#def10]
gmp-6.3.0/extract-dbl.c: scope_hint: In function '__gmp_extract_double'
gmp-6.3.0/extract-dbl.c:53:21: warning[-Wunused-variable]: unused variable 'manh'
#   53 |   unsigned long int manh, manl;
#      |                     ^~~~
#   51|   #else
#   52|   #define BITS_PER_PART GMP_LIMB_BITS
#   53|->   unsigned long int manh, manl;
#   54|   #endif
#   55|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def11]
gmp-6.3.0/gen-sieve.c:93:1: warning[-Wanalyzer-malloc-leak]: leak of ‘limb[0]._mp_d’
gmp-6.3.0/gen-sieve.c:175:1: enter_function: entry to ‘main’
gmp-6.3.0/gen-sieve.c:179:6: branch_false: following ‘false’ branch (when ‘argc == 2’)...
gmp-6.3.0/gen-sieve.c:185:25: branch_false: ...to here
gmp-6.3.0/gen-sieve.c:190:3: call_function: calling ‘generate’ from ‘main’
#   91|   
#   92|     return c;
#   93|-> }
#   94|   
#   95|   void

Error: COMPILER_WARNING (CWE-563): [#def12]
gmp-6.3.0/mpn/generic/toom_interpolate_5pts.c:38: included_from: Included from here.
gmp-6.3.0/mpn/generic/toom_interpolate_5pts.c: scope_hint: In function '__gmpn_toom_interpolate_5pts'
gmp-6.3.0/gmp-impl.h:1723:6: warning[-Wunused-value]: value computed is not used
# 1723 |   (3 & mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 3)))
#      |      ^
gmp-6.3.0/gmp-impl.h:2525:33: note: in definition of macro 'ASSERT_NOCARRY'
# 2525 | #define ASSERT_NOCARRY(expr)   (expr)
#      |                                 ^~~~
gmp-6.3.0/mpn/generic/toom_interpolate_5pts.c:70:19: note: in expansion of macro 'mpn_divexact_by3'
#   70 |   ASSERT_NOCARRY (mpn_divexact_by3 (v2, v2, kk1));    /* v2 <- v2 / 3 */
#      |                   ^~~~~~~~~~~~~~~~
# 1721|   #undef mpn_divexact_by3
# 1722|   #define mpn_divexact_by3(dst,src,size) \
# 1723|->   (3 & mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 3)))
# 1724|   /* override mpn_divexact_by3c defined in gmp.h */
# 1725|   /*

Error: COMPILER_WARNING (CWE-563): [#def13]
gmp-6.3.0/gmp-impl.h:1734:6: warning[-Wunused-value]: value computed is not used
# 1734 |   (7 & 3 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 5)))
#      |   ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gmp-6.3.0/mpn/generic/mulmod_bknp1.c:337:5: note: in expansion of macro 'mpn_divexact_by5'
#  337 |     mpn_divexact_by5 (tp, tp, n + 1);
#      |     ^~~~~~~~~~~~~~~~
# 1732|   #if GMP_NUMB_BITS % 4 == 0
# 1733|   #define mpn_divexact_by5(dst,src,size) \
# 1734|->   (7 & 3 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 5)))
# 1735|   #endif
# 1736|   

Error: COMPILER_WARNING (CWE-563): [#def14]
gmp-6.3.0/gmp-impl.h:1759:7: warning[-Wunused-value]: value computed is not used
# 1759 |   (15 & 1 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 15)))
#      |   ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gmp-6.3.0/mpn/generic/toom_interpolate_7pts.c:212:3: note: in expansion of macro 'mpn_divexact_by15'
#  212 |   mpn_divexact_by15 (w1, w1, m);
#      |   ^~~~~~~~~~~~~~~~~
# 1757|   #if GMP_NUMB_BITS % 4 == 0
# 1758|   #define mpn_divexact_by15(dst,src,size) \
# 1759|->   (15 & 1 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 15)))
# 1760|   #endif
# 1761|   

Error: COMPILER_WARNING (CWE-563): [#def15]
gmp-6.3.0/gmp-impl.h:1764:7: warning[-Wunused-value]: value computed is not used
# 1764 |   (31 & 15 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 17)))
#      |   ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gmp-6.3.0/mpn/generic/mulmod_bknp1.c:348:5: note: in expansion of macro 'mpn_divexact_by17'
#  348 |     mpn_divexact_by17 (tp, tp, n + 1);
#      |     ^~~~~~~~~~~~~~~~~
# 1762|   #if GMP_NUMB_BITS % 8 == 0
# 1763|   #define mpn_divexact_by17(dst,src,size) \
# 1764|->   (31 & 15 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 17)))
# 1765|   #endif
# 1766|   

Error: GCC_ANALYZER_WARNING (CWE-471): [#def16]
gmp-6.3.0/mini-gmp/mini-gmp.c:458:7: warning[-Wanalyzer-write-to-const]: write to ‘const’ object ‘dummy_limb’
gmp-6.3.0/bootstrap.c:126:1: enter_function: entry to ‘mpz_invert_ui_2exp’
gmp-6.3.0/bootstrap.c:130:3: call_function: calling ‘mpz_init_set_ui’ from ‘mpz_invert_ui_2exp’
gmp-6.3.0/bootstrap.c:130:3: return_function: returning to ‘mpz_invert_ui_2exp’ from ‘mpz_init_set_ui’
gmp-6.3.0/bootstrap.c:131:3: call_function: calling ‘mpz_invert_2exp’ from ‘mpz_invert_ui_2exp’
#  456|         /* Carry out */
#  457|         b = (r < b);
#  458|->       rp[i] = r;
#  459|       }
#  460|     while (++i < n);

Error: COMPILER_WARNING (CWE-457): [#def17]
gmp-6.3.0/mpn/generic/gcdext.c: scope_hint: In function '__gmpn_gcdext'
gmp-6.3.0/mpn/generic/gcdext.c:303:50: warning[-Wmaybe-uninitialized]: 'matrix_scratch' may be used uninitialized
#  303 |     nn = mpn_hgcd (ap + p, bp + p, n - p, &M, tp + matrix_scratch);
#      |                                                  ^
gmp-6.3.0/mpn/generic/gcdext.c:203:13: note: 'matrix_scratch' was declared here
#  203 |   mp_size_t matrix_scratch;
#      |             ^~~~~~~~~~~~~~
#  301|   
#  302|       mpn_hgcd_matrix_init (&M, n - p, tp);
#  303|->     nn = mpn_hgcd (ap + p, bp + p, n - p, &M, tp + matrix_scratch);
#  304|       if (nn > 0)
#  305|         {

Error: COMPILER_WARNING (CWE-563): [#def18]
gmp-6.3.0/mpn/generic/invertappr.c: scope_hint: In function '__gmpn_ni_invertappr'
gmp-6.3.0/mpn/generic/invertappr.c:230:21: warning[-Wunused-but-set-variable]: variable 'chk' set but not used
#  230 |           mp_limb_t chk;
#      |                     ^~~
#  228|         if (cy++) {
#  229|   	if (mpn_cmp (xp, dp - n, n) > 0) {
#  230|-> 	  mp_limb_t chk;
#  231|   	  chk = mpn_sublsh1_n (xp, xp, dp - n, n);
#  232|   	  ASSERT (chk == xp[n]);

Error: COMPILER_WARNING (CWE-563): [#def19]
gmp-6.3.0/mpn/generic/matrix22_mul1_inverse_vector.c:44:13: warning[-Wunused-but-set-variable]: variable 'h0' set but not used
#   44 |   mp_limb_t h0, h1;
#      |             ^~
#   42|   				  mp_ptr rp, mp_srcptr ap, mp_ptr bp, mp_size_t n)
#   43|   {
#   44|->   mp_limb_t h0, h1;
#   45|   
#   46|     /* Compute (r;b) <-- (u11 a - u01 b; -u10 a + u00 b) as

Error: COMPILER_WARNING (CWE-563): [#def20]
gmp-6.3.0/mpn/generic/matrix22_mul1_inverse_vector.c: scope_hint: In function '__gmpn_matrix22_mul1_inverse_vector'
gmp-6.3.0/mpn/generic/matrix22_mul1_inverse_vector.c:44:17: warning[-Wunused-but-set-variable]: variable 'h1' set but not used
#   44 |   mp_limb_t h0, h1;
#      |                 ^~
#   42|   				  mp_ptr rp, mp_srcptr ap, mp_ptr bp, mp_size_t n)
#   43|   {
#   44|->   mp_limb_t h0, h1;
#   45|   
#   46|     /* Compute (r;b) <-- (u11 a - u01 b; -u10 a + u00 b) as

Error: COMPILER_WARNING (CWE-457): [#def21]
gmp-6.3.0/mpn/generic/remove.c: scope_hint: In function '__gmpn_remove'
gmp-6.3.0/mpn/generic/remove.c:141:12: warning[-Wmaybe-uninitialized]: 'np' may be used uninitialized
#  141 |         np += pn;
#      |         ~~~^~~~~
gmp-6.3.0/mpn/generic/remove.c:88:18: note: 'np' was declared here
#   88 |   mp_ptr tp, qp, np, qp2;
#      |                  ^~
#  139|   	np = TMP_ALLOC_LIMBS (qn + LOG);	/* powers of V */
#  140|         else
#  141|-> 	np += pn;
#  142|   
#  143|         mpn_sqr (np, pp, pn);

Error: COMPILER_WARNING (CWE-457): [#def22]
gmp-6.3.0/mpn/generic/rootrem.c: scope_hint: In function 'mpn_rootrem_internal'
gmp-6.3.0/mpn/generic/rootrem.c:514:10: warning[-Wmaybe-uninitialized]: 'rn' may be used uninitialized
#  514 |   return rn;
#      |          ^~
gmp-6.3.0/mpn/generic/rootrem.c:211:17: note: 'rn' was declared here
#  211 |   mp_size_t qn, rn, sn, wn, nl, bn;
#      |                 ^~
#  512|   
#  513|     TMP_FREE;
#  514|->   return rn;
#  515|   }

Error: COMPILER_WARNING (CWE-563): [#def23]
gmp-6.3.0/mpn/generic/sec_div.c: scope_hint: In function '__gmpn_sec_div_r'
gmp-6.3.0/mpn/generic/sec_div.c:86:17: warning[-Wunused-variable]: unused variable 'qh'
#   86 |       mp_limb_t qh, cy;
#      |                 ^~
#   84|     if (cnt != 0)
#   85|       {
#   86|->       mp_limb_t qh, cy;
#   87|         mp_ptr np2, dp2;
#   88|         dp2 = tp;					/* dn limbs */

Error: COMPILER_WARNING (CWE-563): [#def24]
gmp-6.3.0/mpn/generic/toom_interpolate_12pts.c: scope_hint: In function '__gmpn_toom_interpolate_12pts'
gmp-6.3.0/mpn/generic/toom_interpolate_12pts.c:137:8: warning[-Wunused-value]: value computed is not used
#  137 |   (255 & 1 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 255)))
#      |   ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gmp-6.3.0/mpn/generic/toom_interpolate_12pts.c:268:3: note: in expansion of macro 'mpn_divexact_by255'
#  268 |   mpn_divexact_by255(r5, r5, n3p1);
#      |   ^~~~~~~~~~~~~~~~~~
#  135|   #if GMP_NUMB_BITS % 8 == 0
#  136|   #define mpn_divexact_by255(dst,src,size) \
#  137|->   (255 & 1 * mpn_bdiv_dbm1 (dst, src, size, __GMP_CAST (mp_limb_t, GMP_NUMB_MASK / 255)))
#  138|   #else
#  139|   #if HAVE_NATIVE_mpn_pi1_bdiv_q_1

Error: GCC_ANALYZER_WARNING: [#def25]
gmp-6.3.0/mpn/rootrem.c:300:3: warning[-Wanalyzer-imprecise-fp-arithmetic]: use of floating-point arithmetic here might yield unexpected results
gmp-6.3.0/mpn/rootrem.c:229:6: branch_false: following 'false' branch (when 'unb >= k')...
gmp-6.3.0/mpn/rootrem.c:244:6: branch_false: ...to here
gmp-6.3.0/mpn/rootrem.c:300:3: branch_true: following 'true' branch...
gmp-6.3.0/mpn/rootrem.c:300:3: branch_true: ...to here
gmp-6.3.0/mpn/rootrem.c:300:3: danger: operand '5.8499999999999996e-1' is of type 'double'
#  298|        258/256 instead of 3/2 ? log2(258/256) < 1/89 < 1/64 */
#  299|   #define EXTRA 2 + (mp_size_t) (0.585 * (double) k / (double) GMP_NUMB_BITS)
#  300|->   TMP_ALLOC_LIMBS_3 (scratch, un + 1, /* used by mpn_div_q */
#  301|   		     qp, un + EXTRA,  /* will contain quotient and remainder
#  302|   					 of R/(k*S^(k-1)), and S^k */

Error: COMPILER_WARNING: [#def26]
gmp-6.3.0/mpn/fat_addmul_2.c:10: included_from: Included from here.
gmp-6.3.0/mpn/x86_64/fat/addmul_2.c:34:69: warning[-Warray-parameter=]: argument 4 of type 'const mp_limb_t[2]' {aka 'const long unsigned int[2]'} with mismatched bound
#   34 | mpn_addmul_2 (mp_ptr rp, mp_srcptr up, mp_size_t n, const mp_limb_t vp[2])
#      |                                                     ~~~~~~~~~~~~~~~~^~~~~
gmp-6.3.0/mpn/x86_64/fat/addmul_2.c:31: included_from: Included from here.
gmp-6.3.0/gmp-impl.h:75:64: note: previously declared as 'mp_srcptr' {aka 'const long unsigned int *'}
#   75 |   __GMP_DECLSPEC mp_limb_t name (mp_ptr, mp_srcptr, mp_size_t, mp_srcptr)
#      |                                                                ^~~~~~~~~
gmp-6.3.0/fat.h:420:1: note: in expansion of macro 'DECL_addmul_2'
#  420 | DECL_addmul_2 (__gmpn_addmul_2_fat);
#      | ^~~~~~~~~~~~~
#   32|   
#   33|   mp_limb_t
#   34|-> mpn_addmul_2 (mp_ptr rp, mp_srcptr up, mp_size_t n, const mp_limb_t vp[2])
#   35|   {
#   36|     rp[n] = mpn_addmul_1 (rp,     up, n, vp[0]);

Error: CPPCHECK_WARNING (CWE-664): [#def27]
gmp-6.3.0/printf/doprnt.c:174: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  172|        very small part of the total work, and we may as well keep applications
#  173|        out of trouble.  */
#  174|->   va_copy (ap, orig_ap);
#  175|   
#  176|     /* The format string is chopped up into pieces to be passed to

Error: CPPCHECK_WARNING (CWE-664): [#def28]
gmp-6.3.0/printf/doprnt.c:194: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  192|        the next output will begin, when that's done */
#  193|     last_fmt = fmt;
#  194|->   va_copy (last_ap, ap);
#  195|   
#  196|     for (;;)

Error: CPPCHECK_WARNING (CWE-664): [#def29]
gmp-6.3.0/printf/doprnt.c:194: error[va_list_usedBeforeStarted]: va_list 'last_ap' used before va_start() was called.
#  192|        the next output will begin, when that's done */
#  193|     last_fmt = fmt;
#  194|->   va_copy (last_ap, ap);
#  195|   
#  196|     for (;;)

Error: GCC_ANALYZER_WARNING (CWE-404): [#def30]
gmp-6.3.0/printf/doprnt.c:206:7: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
gmp-6.3.0/printf/doprnt.c:201:10: branch_false: following 'false' branch (when 'fmt' is non-NULL)...
gmp-6.3.0/printf/doprnt.c:206:7: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:206:7: acquire_resource: 'va_copy' called here
gmp-6.3.0/printf/doprnt.c:201:10: branch_false: following 'false' branch (when 'fmt' is non-NULL)...
gmp-6.3.0/printf/doprnt.c:206:7: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:206:7: danger: missing call to 'va_end' to match 'va_copy' at [(4)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/3)
#  204|         /* this_fmt and this_ap are the current '%' sequence being considered */
#  205|         this_fmt = fmt;
#  206|->       va_copy (this_ap, ap);
#  207|         fmt++; /* skip the '%' */
#  208|   

Error: GCC_ANALYZER_WARNING (CWE-404): [#def31]
gmp-6.3.0/printf/doprnt.c:343:17: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
gmp-6.3.0/printf/doprnt.c:194:3: acquire_resource: 'va_copy' called here
gmp-6.3.0/printf/doprnt.c:201:10: branch_false: following 'false' branch (when 'fmt' is non-NULL)...
gmp-6.3.0/printf/doprnt.c:206:7: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:236:14: branch_false: following 'false' branch (when 'fchar != 0')...
gmp-6.3.0/printf/doprnt.c:239:11: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:236:14: branch_false: following 'false' branch (when 'fchar != 0')...
gmp-6.3.0/printf/doprnt.c:239:11: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:271:16: branch_true: following 'true' branch (when 'seen_precision == 0')...
gmp-6.3.0/printf/doprnt.c:272:15: branch_true: ...to here
gmp-6.3.0/printf/doprnt.c:320:15: branch_true: following 'true' branch (when 'last_fmt == fmt')...
gmp-6.3.0/printf/doprnt.c:321:25: branch_true: ...to here
gmp-6.3.0/printf/doprnt.c:342:17: branch_false: following 'false' branch...
gmp-6.3.0/printf/doprnt.c:342:17: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:343:17: danger: missing call to 'va_end' to match 'va_copy' at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
#  341|   		 __GMP_FREE_FUNC_TYPE (gmp_str, strlen(gmp_str)+1, char);
#  342|   		DOPRNT_ACCUMULATE (ret);
#  343|-> 		va_copy (last_ap, ap);
#  344|   		last_fmt = fmt;
#  345|   	      }

Error: GCC_ANALYZER_WARNING (CWE-404): [#def32]
gmp-6.3.0/printf/doprnt.c:375:15: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
gmp-6.3.0/printf/doprnt.c:194:3: acquire_resource: 'va_copy' called here
gmp-6.3.0/printf/doprnt.c:201:10: branch_false: following 'false' branch (when 'fmt' is non-NULL)...
gmp-6.3.0/printf/doprnt.c:206:7: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:236:14: branch_false: following 'false' branch (when 'fchar != 0')...
gmp-6.3.0/printf/doprnt.c:239:11: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:236:14: branch_false: following 'false' branch (when 'fchar != 0')...
gmp-6.3.0/printf/doprnt.c:239:11: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:362:16: branch_false: following 'false' branch...
 branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:371:15: branch_true: following 'true' branch (when 'last_fmt == fmt')...
gmp-6.3.0/printf/doprnt.c:372:15: branch_true: ...to here
gmp-6.3.0/printf/doprnt.c:372:15: branch_false: following 'false' branch...
gmp-6.3.0/printf/doprnt.c:372:15: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:375:15: danger: missing call to 'va_end' to match 'va_copy' at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
#  373|   						   GMP_DECIMAL_POINT,
#  374|   						   va_arg (ap, mpf_srcptr)));
#  375|-> 	      va_copy (last_ap, ap);
#  376|   	      last_fmt = fmt;
#  377|   	      break;

Error: GCC_ANALYZER_WARNING (CWE-404): [#def33]
gmp-6.3.0/printf/doprnt.c:497:13: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
gmp-6.3.0/printf/doprnt.c:194:3: acquire_resource: 'va_copy' called here
gmp-6.3.0/printf/doprnt.c:201:10: branch_false: following 'false' branch (when 'fmt' is non-NULL)...
gmp-6.3.0/printf/doprnt.c:206:7: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:236:14: branch_false: following 'false' branch (when 'fchar != 0')...
gmp-6.3.0/printf/doprnt.c:239:11: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:236:14: branch_false: following 'false' branch (when 'fchar != 0')...
gmp-6.3.0/printf/doprnt.c:239:11: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:450:15: branch_true: following 'true' branch (when 'last_fmt == fmt')...
gmp-6.3.0/printf/doprnt.c:451:15: branch_true: ...to here
gmp-6.3.0/printf/doprnt.c:497:13: danger: missing call to 'va_end' to match 'va_copy' at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0)
#  495|   	      }
#  496|   	    }
#  497|-> 	    va_copy (last_ap, ap);
#  498|   	    last_fmt = fmt;
#  499|   	    goto next;

Error: CPPCHECK_WARNING (CWE-664): [#def34]
gmp-6.3.0/printf/doprnt.c:612: error[va_list_usedBeforeStarted]: va_list 'last_ap' used before va_start() was called.
#  610|     TRACE (printf ("remainder: \"%s\"\n", last_fmt));
#  611|     if (*last_fmt != '\0')
#  612|->     DOPRNT_FORMAT (last_fmt, last_ap);
#  613|   
#  614|     if (funs->final != NULL)

Error: GCC_ANALYZER_WARNING (CWE-404): [#def35]
gmp-6.3.0/printf/doprnt.c:620:10: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
gmp-6.3.0/printf/doprnt.c:194:3: acquire_resource: 'va_copy' called here
gmp-6.3.0/printf/doprnt.c:201:10: branch_true: following 'true' branch (when 'fmt' is NULL)...
gmp-6.3.0/printf/doprnt.c:611:7: branch_true: ...to here
gmp-6.3.0/printf/doprnt.c:611:6: branch_false: following 'false' branch...
gmp-6.3.0/printf/doprnt.c:614:7: branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:614:6: branch_false: following 'false' branch...
 branch_false: ...to here
gmp-6.3.0/printf/doprnt.c:620:10: danger: missing call to 'va_end' to match 'va_copy' at [(1)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/0)
#  618|    done:
#  619|     __GMP_FREE_FUNC_TYPE (alloc_fmt, alloc_fmt_size, char);
#  620|->   return retval;
#  621|   
#  622|    error:

Error: CPPCHECK_WARNING (CWE-664): [#def36]
gmp-6.3.0/printf/snprntffuns.c:75: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#   73|     if (avail > 1)
#   74|       {
#   75|->       va_copy (ap, orig_ap);
#   76|         ret = vsnprintf (d->buf, avail, fmt, ap);
#   77|         if (ret == -1)

Error: CPPCHECK_WARNING (CWE-664): [#def37]
gmp-6.3.0/printf/snprntffuns.c:76: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#   74|       {
#   75|         va_copy (ap, orig_ap);
#   76|->       ret = vsnprintf (d->buf, avail, fmt, ap);
#   77|         if (ret == -1)
#   78|           return ret;

Error: CPPCHECK_WARNING (CWE-664): [#def38]
gmp-6.3.0/printf/vasprintf.c:81: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#   79|         GMP_ASPRINTF_T_NEED (d, space);
#   80|         space = d->alloc - d->size;
#   81|->       va_copy (ap, orig_ap);
#   82|         ret = vsnprintf (d->buf + d->size, space, fmt, ap);
#   83|         if (ret == -1)

Error: CPPCHECK_WARNING (CWE-664): [#def39]
gmp-6.3.0/printf/vasprintf.c:82: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#   80|         space = d->alloc - d->size;
#   81|         va_copy (ap, orig_ap);
#   82|->       ret = vsnprintf (d->buf + d->size, space, fmt, ap);
#   83|         if (ret == -1)
#   84|           {

Error: COMPILER_WARNING (CWE-563): [#def40]
gmp-6.3.0/scanf/doscan.c: scope_hint: In function '__gmp_doscan'
gmp-6.3.0/scanf/doscan.c:473:33: warning[-Wunused-variable]: unused variable 'end_fmt'
#  473 |   const char  *fmt, *this_fmt, *end_fmt;
#      |                                 ^~~~~~~
#  471|     va_list     ap;
#  472|     char	      *alloc_fmt;
#  473|->   const char  *fmt, *this_fmt, *end_fmt;
#  474|     size_t      orig_fmt_len, alloc_fmt_size, len;
#  475|     int	      new_fields, new_chars;

Error: CPPCHECK_WARNING (CWE-664): [#def41]
gmp-6.3.0/scanf/doscan.c:489: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  487|        very small part of the total work, and we may as well keep applications
#  488|        out of trouble.  */
#  489|->   va_copy (ap, orig_ap);
#  490|   
#  491|     /* Parts of the format string are going to be copied so that a " %n" can

Error: GCC_ANALYZER_WARNING (CWE-404): [#def42]
gmp-6.3.0/scanf/doscan.c:765:10: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
gmp-6.3.0/scanf/doscan.c:489:3: acquire_resource: 'va_copy' called here
gmp-6.3.0/scanf/doscan.c:765:10: danger: missing call to 'va_end' to match 'va_copy' at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#  763|    done:
#  764|     (*__gmp_free_func) (alloc_fmt, alloc_fmt_size);
#  765|->   return fields;
#  766|   }

Scan Properties

analyzer-version-clippy1.86.0
analyzer-version-cppcheck2.17.1
analyzer-version-gcc15.0.1
analyzer-version-gcc-analyzer15.0.1
analyzer-version-shellcheck0.10.0
analyzer-version-unicontrol0.0.2
enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
exit-code0
hostip-172-16-1-127.us-west-2.compute.internal
known-false-positives/usr/share/csmock/known-false-positives.js
known-false-positives-rpmknown-false-positives-0.0.0.20250425.124705.g1c7c448.main-1.el9.noarch
mock-configfedora-rawhide-x86_64
project-namegmp-6.3.0-3.fc43
store-results-to/tmp/tmpo9ngo18p/gmp-6.3.0-3.fc43.tar.xz
time-created2025-04-25 12:41:49
time-finished2025-04-25 12:46:40
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'unicontrol,cppcheck,gcc,clippy,shellcheck' '-o' '/tmp/tmpo9ngo18p/gmp-6.3.0-3.fc43.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmpo9ngo18p/gmp-6.3.0-3.fc43.src.rpm'
tool-versioncsmock-3.8.1.20250422.172604.g26bc3d6-1.el9