Task #4 - units-2.21-5.fc37/scan-results.err
back to task #4download
Error: GCC_ANALYZER_WARNING (CWE-457): units-2.21/parse.tab.c: scope_hint: In function ‘unitsparse’ units-2.21/parse.tab.c:600:7: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘yyss’ units-2.21/parse.tab.c:585:9: note: in expansion of macro ‘YYCOPY’ units-2.21/parse.tab.c:1445:9: note: in expansion of macro ‘YYSTACK_RELOCATE’ units-2.21/parse.y:534:7: note: in expansion of macro ‘yyparse’ units-2.21/parse.tab.c:1312:1: note: in expansion of macro ‘yyparse’ units-2.21/parse.tab.c:585:9: note: in expansion of macro ‘YYCOPY’ units-2.21/parse.tab.c:1445:9: note: in expansion of macro ‘YYSTACK_RELOCATE’ units-2.21/parse.tab.c:585:9: note: in expansion of macro ‘YYCOPY’ units-2.21/parse.tab.c:1445:9: note: in expansion of macro ‘YYSTACK_RELOCATE’ # 598| # if defined __GNUC__ && 1 < __GNUC__ # 599| # define YYCOPY(Dst, Src, Count) \ # 600|-> __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src))) # 601| # else # 602| # define YYCOPY(Dst, Src, Count) \ Error: GCC_ANALYZER_WARNING (CWE-401): units-2.21/units.c: scope_hint: In function ‘growbuffer’ units-2.21/units.c:382:10: warning[-Wanalyzer-malloc-leak]: leak of ‘buffer’ # 380| *bufsize += BUFGROW; # 381| if (usemalloc) # 382|-> *buf = malloc(*bufsize); # 383| else # 384| *buf = realloc(*buf,*bufsize); Error: GCC_ANALYZER_WARNING (CWE-401): units-2.21/units.c:384:10: warning[-Wanalyzer-malloc-leak]: leak of ‘buffer’ # 382| *buf = malloc(*bufsize); # 383| else # 384|-> *buf = realloc(*buf,*bufsize); # 385| if (!*buf){ # 386| fprintf(stderr, "%s: memory allocation error (growbuffer)\n",progname); Error: COMPILER_WARNING (CWE-563): units-2.21/units.c: scope_hint: In function ‘openfile’ units-2.21/units.c:396:7: warning[-Wunused-variable]: unused variable ‘ret’ # 396 | int ret; # | ^~~ # 394| { # 395| FILE *fileptr; # 396|-> int ret; # 397| # 398| struct stat statbuf; Error: CLANG_WARNING: units-2.21/units.c:499:8: warning[core.NullDereference]: Dereference of null pointer (loaded from variable 'string') # 497| replacectrlchars(char *string) # 498| { # 499|-> for(;*string;string++) # 500| if (iscntrl(*string)) # 501| *string = ' '; Error: CLANG_WARNING: units-2.21/units.c:515:3: warning[core.uninitialized.Assign]: The expression is an uninitialized value. The computed value will also be garbage # 513| if (!fgets(buf,size,file)) # 514| return 0; # 515|-> (*count)++; # 516| while(strlen(buf)>=2 && 0==strcmp(buf+strlen(buf)-2,"\\\n")){ # 517| (*count)++; Error: CPPCHECK_WARNING (CWE-476): units-2.21/units.c:621: error[nullPointer]: Null pointer dereference # 619| len = strlen(str)+1; # 620| widestr = mymalloc(sizeof(wchar_t)*len, "(strwidth)"); # 621|-> len = mbsrtowcs(widestr, &str, len, NULL); # 622| # 623| if (len==-1){ Error: COMPILER_WARNING (CWE-563): units-2.21/units.c: scope_hint: In function ‘readunits’ units-2.21/units.c:804:41: warning[-Wunused-value]: value computed is not used # 804 | #define readerror (goterr=1) && errfile && fprintf # | ^~ units-2.21/units.c:1645:9: note: in expansion of macro ‘readerror’ # 1645 | readerror(errfile, "%s: %s on line %d of '%s'\n", # | ^~~~~~~~~ # 802| # 803| # 804|-> #define readerror (goterr=1) && errfile && fprintf # 805| # 806| #define VAGUE_ERR "%s: error in units file '%s' line %d\n", \ Error: CLANG_WARNING: units-2.21/units.c:1227:13: warning[unix.Malloc]: Potential leak of memory pointed to by 'domain_min' # 1225| if (i==FN_UNITS){ # 1226| if (forward_dim || inverse_dim){ # 1227|-> REPEAT_ERR; # 1228| return E_BADFILE; # 1229| } Error: CLANG_WARNING: units-2.21/units.c:1227:13: warning[unix.Malloc]: Potential leak of memory pointed to by 'forward_dim' # 1225| if (i==FN_UNITS){ # 1226| if (forward_dim || inverse_dim){ # 1227|-> REPEAT_ERR; # 1228| return E_BADFILE; # 1229| } Error: CLANG_WARNING: units-2.21/units.c:1227:13: warning[unix.Malloc]: Potential leak of memory pointed to by 'inverse_dim' # 1225| if (i==FN_UNITS){ # 1226| if (forward_dim || inverse_dim){ # 1227|-> REPEAT_ERR; # 1228| return E_BADFILE; # 1229| } Error: CLANG_WARNING: units-2.21/units.c:1230:25: warning[core.CallAndMessage]: 1st function call argument is an uninitialized value # 1228| return E_BADFILE; # 1229| } # 1230|-> forward_dim = dupstr(first); # 1231| if (second) # 1232| inverse_dim = dupstr(second); Error: CLANG_WARNING: units-2.21/units.c:1240:17: warning[core.CallAndMessage]: 1st function call argument is an uninitialized value # 1238| return E_BADFILE; # 1239| } # 1240|-> err = extract_interval(first,second,&domain_min, &domain_max); # 1241| domain_min_open = firstopen; # 1242| domain_max_open = secondopen; Error: CLANG_WARNING: units-2.21/units.c:1265:17: warning[core.CallAndMessage]: 1st function call argument is an uninitialized value # 1263| return E_BADFILE; # 1264| } # 1265|-> err = extract_interval(first,second,&range_min, &range_max); # 1266| range_min_open = firstopen; # 1267| range_max_open = secondopen; Error: CPPCHECK_WARNING (CWE-401): units-2.21/units.c:1408: error[memleakOnRealloc]: Common realloc mistake: 'tab' nulled but not freed upon failure # 1406| if (tabpt>=tablealloc){ # 1407| tablealloc+=20; # 1408|-> tab = (struct pair *)realloc(tab,sizeof(struct pair)*tablealloc); # 1409| if (!tab){ # 1410| if (errfile) fprintf(errfile, "%s: memory allocation error (newtable)\n", Error: CLANG_WARNING: units-2.21/units.c:1876:4: warning[unix.Malloc]: Potential leak of memory pointed to by 'permfile' # 1874| } # 1875| } # 1876|-> fclose(unitfile); # 1877| free(line); # 1878| if (unitcount) Error: CPPCHECK_WARNING (CWE-476): units-2.21/units.c:2376: error[ctunullpointer]: Null pointer dereference: first # 2374| { # 2375| return # 2376|-> compareproducts(first->numerator, second->numerator, isdimless) || # 2377| compareproducts(first->denominator, second->denominator, isdimless); # 2378| } Error: GCC_ANALYZER_WARNING (CWE-457): units-2.21/units.c: scope_hint: In function ‘showfunction’ units-2.21/units.c:2832:23: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘not_dimensionless’ # 2830| if (func->domain_min && func->domain_max) { # 2831| logprintf(num_format.format, *func->domain_min); # 2832|-> if (func->dimen && (not_dimensionless || unit.factor != 1)){ # 2833| if (isdecimal(*func->dimen)) # 2834| logputs(" *"); Error: GCC_ANALYZER_WARNING (CWE-457): units-2.21/units.c:2857:8: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘not_dimensionless’ # 2855| logputchar('\n'); # 2856| for(i=strwidth(deftext);i;i--) logputchar(' '); # 2857|-> if (not_dimensionless) # 2858| logprintf("%s has units %s",func->param, func->dimen); # 2859| else Error: COMPILER_WARNING (CWE-457): units-2.21/units.c: scope_hint: In function ‘showfunction’ units-2.21/units.c:2857:8: warning[-Wmaybe-uninitialized]: ‘not_dimensionless’ may be used uninitialized # 2857 | if (not_dimensionless) # | ^ units-2.21/units.c:2813:7: note: ‘not_dimensionless’ was declared here # 2813 | int not_dimensionless, i; # | ^~~~~~~~~~~~~~~~~ # 2855| logputchar('\n'); # 2856| for(i=strwidth(deftext);i;i--) logputchar(' '); # 2857|-> if (not_dimensionless) # 2858| logprintf("%s has units %s",func->param, func->dimen); # 2859| else Error: CPPCHECK_WARNING (CWE-457): units-2.21/units.c:3681: error[legacyUninitvar]: Uninitialized variable: indent # 3679| if (errors[i]) { # 3680| lastchar(unittext) = '0'+i; # 3681|-> printf("%s%s(",indent,infunc->name); # 3682| printf(num_format.format, factor); # 3683| printf("%s): %s\n", unittext, errormsg[errors[i]]); Error: CLANG_WARNING: units-2.21/units.c:4052:13: warning[core.NullDereference]: Dereference of null pointer (loaded from variable 'curbuiltin') # 4050| } # 4051| if (checktype == CU_BUILTIN){ # 4052|-> while(*curbuiltin){ # 4053| if (startswith(*curbuiltin,text)) # 4054| output = dupstr(*curbuiltin); Error: COMPILER_WARNING (CWE-563): units-2.21/units.c: scope_hint: In function ‘checkcwd’ units-2.21/units.c:4131:9: warning[-Wunused-variable]: unused variable ‘p’ # 4131 | char *p; # | ^ # 4129| { # 4130| FILE *fp; # 4131|-> char *p; # 4132| # 4133| fp = openfile(file, "r"); Error: GCC_ANALYZER_WARNING (CWE-401): units-2.21/units.c: scope_hint: In function ‘getprogdir’ units-2.21/units.c:4279:10: warning[-Wanalyzer-malloc-leak]: leak of ‘progdir’ # 4277| *p = '\0'; # 4278| # 4279|-> return progdir; # 4280| } # 4281| Error: CPPCHECK_WARNING (CWE-672): units-2.21/units.c:4536: error[deallocret]: Returning/dereferencing 'file' after it is deallocated / released # 4534| else { # 4535| fclose(testfile); # 4536|-> return file; # 4537| } # 4538| } Error: COMPILER_WARNING (CWE-563): units-2.21/units.c: scope_hint: In function ‘printversion’ units-2.21/units.c:4749:9: warning[-Wunused-variable]: unused variable ‘fp’ # 4749 | FILE *fp, *histfile; # | ^~ # 4747| char *m_unitsfile; /* personal units data file from HOME_UNITS_ENV */ # 4748| char *p_unitsfile; /* personal units data file */ # 4749|-> FILE *fp, *histfile; # 4750| #ifdef _WIN32 # 4751| char *localemap; Error: CLANG_WARNING: units-2.21/units.c:4826:13: warning[unix.Malloc]: Potential leak of memory pointed to by 'p_unitsfile' # 4824| printf("Personal units data file is '%s'\n", p_unitsfile); # 4825| if (!exists){ # 4826|-> if (homedir_error && !nonempty(m_unitsfile)) # 4827| printf(" (File invalid: %s)\n", homedir_error); # 4828| else if (errno==ENOENT && !nonempty(m_unitsfile)) Error: CLANG_WARNING: units-2.21/units.c:5136:26: warning[core.NonNullParamChecker]: Null pointer passed to 1st parameter expecting 'nonnull' # 5134| char savechar; # 5135| # 5136|-> if (flags.unitlists && strchr(unitstr, UNITSEPCHAR)){ # 5137| puts("Unit list not allowed"); # 5138| return 1; Error: CLANG_WARNING: units-2.21/units.c:5558:19: warning[core.NullDereference]: Dereference of null pointer (loaded from variable 'lastunitstr') # 5556| if (!value_shown) { /* provide output if every value rounded to zero */ # 5557| logputs("0 "); # 5558|-> if (isdecimal(*lastunitstr)) # 5559| logputs("* "); # 5560| logputs(lastunitstr);