2026-05-05 02:45 ftp://ftp.de.debian.org/debian/pool/main/s/solfege/solfege_3.23.4.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --library=python --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j1 platform: Linux-6.8.0-111-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.70 compiler: g++ (Ubuntu 14.2.0-4ubuntu2~24.04.1) 14.2.0 cppcheck: head 2.20.0 head-info: 519958a (2026-05-04 15:03:10 +0200) count: 51 51 elapsed-time: 0.4 0.3 head-timing-info: old-timing-info: head results: solfege-3.23.4/solfege/soundcard/calc.c:73:31: style: Parameter 'data' can be declared as pointer to const [constParameterPointer] solfege-3.23.4/solfege/soundcard/calc.c:106:32: style: Parameter 'data' can be declared as pointer to const [constParameterPointer] solfege-3.23.4/solfege/soundcard/calc.c:168:11: style: int result is assigned to long variable. If the variable is long to avoid loss of information, then you have loss of information. [truncLongCastAssignment] solfege-3.23.4/solfege/soundcard/dsp.c:78:53: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_NONBLOCK [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/dsp.c:123:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_DSP_SETFMT [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/dsp.c:134:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_DSP_CHANNELS [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/dsp.c:145:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_DSP_SPEED [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/dsp.c:164:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_DSP_SETFRAGMENT [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/dsp.c:227:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_DSP_SYNC [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/dsp.c:236:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_DSP_RESET [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/dsp.c:245:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_DSP_GETOSPACE [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/dsp.c:254:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_DSP_GETISPACE [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/dsp.c:265:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_WRONLY [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/dsp.c:288:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDONLY [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/dsp.c:314:9: style: int result is assigned to long variable. If the variable is long to avoid loss of information, then you have loss of information. [truncLongCastAssignment] solfege-3.23.4/solfege/soundcard/fft.c:192:3: warning: If memory allocation fails, then there is a possible null pointer dereference: window [nullPointerOutOfMemory] solfege-3.23.4/solfege/soundcard/fft.c:190:28: note: Assuming allocation function fails solfege-3.23.4/solfege/soundcard/fft.c:190:11: note: Assignment 'window=(double*)xmalloc(sizeof(double)*nn)', assigned value is 0 solfege-3.23.4/solfege/soundcard/fft.c:192:3: note: Null pointer dereference solfege-3.23.4/solfege/soundcard/fft.c:192:15: warning: If memory allocation fails, then there is a possible null pointer dereference: window [nullPointerOutOfMemory] solfege-3.23.4/solfege/soundcard/fft.c:190:28: note: Assuming allocation function fails solfege-3.23.4/solfege/soundcard/fft.c:190:11: note: Assignment 'window=(double*)xmalloc(sizeof(double)*nn)', assigned value is 0 solfege-3.23.4/solfege/soundcard/fft.c:192:15: note: Null pointer dereference solfege-3.23.4/solfege/soundcard/macro_to_function.c:65:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CTL_MAIN_VOLUME [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/solfege_c_midi.c:35:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _seqbufptr [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/solfege_c_midi.c:44:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_SEQ_NRSYNTHS [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/solfege_c_midi.c:55:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_SEQ_RESET [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/solfege_c_midi.c:69:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_TMR_TIMEBASE [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/solfege_c_midi.c:82:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_TMR_TEMPO [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/solfege_c_midi.c:91:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_SEQ_GETTIME [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/solfege_c_midi.c:106:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_SYNTH_INFO [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/solfege_c_midi.c:118:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_SYNTH_INFO [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:58:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MAXERRORLENGTH [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:89:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MOM_DONE [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:143:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MMSYSERR_NOERROR [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:189:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MMSYSERR_NOERROR [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:243:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CALLBACK_FUNCTION [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:260:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_RuntimeError [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:310:59: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable DWORD [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:337:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MIDI_MAPPER [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:356:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MMSYSERR_INVALHANDLE [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:381:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_RuntimeError [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:426:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_RuntimeError [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:469:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_RuntimeError [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:512:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_RuntimeError [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:550:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_RuntimeError [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:583:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_RuntimeError [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:609:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PyExc_RuntimeError [valueFlowBailoutIncompleteVar] solfege-3.23.4/solfege/soundcard/winmidi.c:696:5: warning: Return value of function PyModule_AddObject() is not used. [ignoredReturnValue] solfege-3.23.4/solfege/soundcard/winmidi.c:238:5: style: Condition '!s_FreeNodes(obj)' is always false [knownConditionTrueFalse] solfege-3.23.4/solfege/soundcard/winmidi.c:238:17: note: Calling function 's_FreeNodes' returns 1 solfege-3.23.4/solfege/soundcard/winmidi.c:238:5: note: Condition '!s_FreeNodes(obj)' is always false solfege-3.23.4/solfege/soundcard/winmidi.c:405:23: style: Parameter 'self' can be declared as pointer to const. However it seems that 'Winmidi_init' is a callback function, if 'self' is declared with const you might also need to cast function pointer(s). [constParameterCallback] solfege-3.23.4/solfege/soundcard/winmidi.c:669:15: note: You might need to cast the function pointer here solfege-3.23.4/solfege/soundcard/winmidi.c:405:23: note: Parameter 'self' can be declared as pointer to const solfege-3.23.4/solfege/soundcard/winmidi.c:405:39: style: Parameter 'args' can be declared as pointer to const. However it seems that 'Winmidi_init' is a callback function, if 'args' is declared with const you might also need to cast function pointer(s). [constParameterCallback] solfege-3.23.4/solfege/soundcard/winmidi.c:669:15: note: You might need to cast the function pointer here solfege-3.23.4/solfege/soundcard/winmidi.c:405:39: note: Parameter 'args' can be declared as pointer to const solfege-3.23.4/solfege/soundcard/winmidi.c:405:55: style: Parameter 'kwds' can be declared as pointer to const. However it seems that 'Winmidi_init' is a callback function, if 'kwds' is declared with const you might also need to cast function pointer(s). [constParameterCallback] solfege-3.23.4/solfege/soundcard/winmidi.c:669:15: note: You might need to cast the function pointer here solfege-3.23.4/solfege/soundcard/winmidi.c:405:55: note: Parameter 'kwds' can be declared as pointer to const solfege-3.23.4/solfege/soundcard/winmidi.c:575:57: style: Parameter 'args' can be declared as pointer to const. However it seems that 'Winmidi_Play' is a callback function, if 'args' is declared with const you might also need to cast function pointer(s). [constParameterCallback] solfege-3.23.4/solfege/soundcard/winmidi.c:626:27: note: You might need to cast the function pointer here solfege-3.23.4/solfege/soundcard/winmidi.c:575:57: note: Parameter 'args' can be declared as pointer to const solfege-3.23.4/test/seq.c:17:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _seqbufptr [valueFlowBailoutIncompleteVar] solfege-3.23.4/test/seq.c:25:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SNDCTL_SEQ_RESET [valueFlowBailoutIncompleteVar] solfege-3.23.4/test/seq.c:29:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_WRONLY [valueFlowBailoutIncompleteVar] diff: DONE