Diff of the two buildlogs: -- --- b1/build.log 2023-04-18 20:33:41.233901089 +0000 +++ b2/build.log 2023-04-18 20:36:23.382708928 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Mon May 20 14:55:51 -12 2024 -I: pbuilder-time-stamp: 1716260151 +I: Current time: Wed Apr 19 10:33:43 +14 2023 +I: pbuilder-time-stamp: 1681850023 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/bookworm-reproducible-base.tgz] I: copying local configuration @@ -16,7 +16,7 @@ I: copying [./komposter_0+git20201216+ds.orig.tar.xz] I: copying [./komposter_0+git20201216+ds-2.debian.tar.xz] I: Extracting source -gpgv: Signature made Tue Jan 4 01:03:58 2022 -12 +gpgv: Signature made Wed Jan 5 03:03:58 2022 +14 gpgv: using RSA key B60A1BF363DC1319FF0A8E89116852BCDF7515C0 gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./komposter_0+git20201216+ds-2.dsc: no acceptable signature found @@ -25,135 +25,167 @@ dpkg-source: info: unpacking komposter_0+git20201216+ds-2.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/1582683/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/1639232/tmp/hooks/D01_modify_environment starting +debug: Running on ionos1-amd64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Apr 19 10:33 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/1639232/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/1639232/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=16' - DISTRIBUTION='bookworm' - HOME='/root' - HOST_ARCH='amd64' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="15" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.2.15(1)-release' + BUILDDIR=/build + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=15' + DIRSTACK=() + DISTRIBUTION=bookworm + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='835360b1f2084c749320eb25bd2bf5e3' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='1582683' - PS1='# ' - PS2='> ' + INVOCATION_ID=dc792a3cf8984720828d15d611af3f0b + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=1639232 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.eH3ryckD/pbuilderrc_dVcL --distribution bookworm --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bookworm-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.eH3ryckD/b1 --logfile b1/build.log komposter_0+git20201216+ds-2.dsc' - SUDO_GID='110' - SUDO_UID='105' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://85.184.249.68:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.eH3ryckD/pbuilderrc_5WiN --distribution bookworm --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bookworm-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.eH3ryckD/b2 --logfile b2/build.log --extrapackages usrmerge komposter_0+git20201216+ds-2.dsc' + SUDO_GID=110 + SUDO_UID=105 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://78.137.99.97:3128 I: uname -a - Linux ionos5-amd64 6.1.0-0.deb11.5-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.12-1~bpo11+1 (2023-03-05) x86_64 GNU/Linux + Linux i-capture-the-hostname 5.10.0-21-amd64 #1 SMP Debian 5.10.162-1 (2023-01-21) x86_64 GNU/Linux I: ls -l /bin total 5632 - -rwxr-xr-x 1 root root 1265648 Feb 12 2023 bash - -rwxr-xr-x 3 root root 39224 Sep 18 2022 bunzip2 - -rwxr-xr-x 3 root root 39224 Sep 18 2022 bzcat - lrwxrwxrwx 1 root root 6 Sep 18 2022 bzcmp -> bzdiff - -rwxr-xr-x 1 root root 2225 Sep 18 2022 bzdiff - lrwxrwxrwx 1 root root 6 Sep 18 2022 bzegrep -> bzgrep - -rwxr-xr-x 1 root root 4893 Nov 27 2021 bzexe - lrwxrwxrwx 1 root root 6 Sep 18 2022 bzfgrep -> bzgrep - -rwxr-xr-x 1 root root 3775 Sep 18 2022 bzgrep - -rwxr-xr-x 3 root root 39224 Sep 18 2022 bzip2 - -rwxr-xr-x 1 root root 14568 Sep 18 2022 bzip2recover - lrwxrwxrwx 1 root root 6 Sep 18 2022 bzless -> bzmore - -rwxr-xr-x 1 root root 1297 Sep 18 2022 bzmore - -rwxr-xr-x 1 root root 44016 Sep 20 2022 cat - -rwxr-xr-x 1 root root 68656 Sep 20 2022 chgrp - -rwxr-xr-x 1 root root 64496 Sep 20 2022 chmod - -rwxr-xr-x 1 root root 72752 Sep 20 2022 chown - -rwxr-xr-x 1 root root 151152 Sep 20 2022 cp - -rwxr-xr-x 1 root root 125640 Jan 5 2023 dash - -rwxr-xr-x 1 root root 121904 Sep 20 2022 date - -rwxr-xr-x 1 root root 89240 Sep 20 2022 dd - -rwxr-xr-x 1 root root 102200 Sep 20 2022 df - -rwxr-xr-x 1 root root 151344 Sep 20 2022 dir - -rwxr-xr-x 1 root root 88656 Mar 22 2023 dmesg - lrwxrwxrwx 1 root root 8 Dec 19 2022 dnsdomainname -> hostname - lrwxrwxrwx 1 root root 8 Dec 19 2022 domainname -> hostname - -rwxr-xr-x 1 root root 43856 Sep 20 2022 echo - -rwxr-xr-x 1 root root 41 Jan 24 2023 egrep - -rwxr-xr-x 1 root root 35664 Sep 20 2022 false - -rwxr-xr-x 1 root root 41 Jan 24 2023 fgrep - -rwxr-xr-x 1 root root 85600 Mar 22 2023 findmnt - -rwsr-xr-x 1 root root 35128 Mar 22 2023 fusermount - -rwxr-xr-x 1 root root 203152 Jan 24 2023 grep - -rwxr-xr-x 2 root root 2346 Apr 9 2022 gunzip - -rwxr-xr-x 1 root root 6447 Apr 9 2022 gzexe - -rwxr-xr-x 1 root root 98136 Apr 9 2022 gzip - -rwxr-xr-x 1 root root 22680 Dec 19 2022 hostname - -rwxr-xr-x 1 root root 72824 Sep 20 2022 ln - -rwxr-xr-x 1 root root 53024 Mar 23 2023 login - -rwxr-xr-x 1 root root 151344 Sep 20 2022 ls - -rwxr-xr-x 1 root root 207168 Mar 22 2023 lsblk - -rwxr-xr-x 1 root root 97552 Sep 20 2022 mkdir - -rwxr-xr-x 1 root root 72912 Sep 20 2022 mknod - -rwxr-xr-x 1 root root 43952 Sep 20 2022 mktemp - -rwxr-xr-x 1 root root 59712 Mar 22 2023 more - -rwsr-xr-x 1 root root 59704 Mar 22 2023 mount - -rwxr-xr-x 1 root root 18744 Mar 22 2023 mountpoint - -rwxr-xr-x 1 root root 142968 Sep 20 2022 mv - lrwxrwxrwx 1 root root 8 Dec 19 2022 nisdomainname -> hostname - lrwxrwxrwx 1 root root 14 Apr 2 2023 pidof -> /sbin/killall5 - -rwxr-xr-x 1 root root 43952 Sep 20 2022 pwd - lrwxrwxrwx 1 root root 4 Feb 12 2023 rbash -> bash - -rwxr-xr-x 1 root root 52112 Sep 20 2022 readlink - -rwxr-xr-x 1 root root 72752 Sep 20 2022 rm - -rwxr-xr-x 1 root root 56240 Sep 20 2022 rmdir - -rwxr-xr-x 1 root root 27560 Nov 2 2022 run-parts - -rwxr-xr-x 1 root root 126424 Jan 5 2023 sed - lrwxrwxrwx 1 root root 4 Jan 5 2023 sh -> dash - -rwxr-xr-x 1 root root 43888 Sep 20 2022 sleep - -rwxr-xr-x 1 root root 85008 Sep 20 2022 stty - -rwsr-xr-x 1 root root 72000 Mar 22 2023 su - -rwxr-xr-x 1 root root 39824 Sep 20 2022 sync - -rwxr-xr-x 1 root root 531984 Apr 6 2023 tar - -rwxr-xr-x 1 root root 14520 Nov 2 2022 tempfile - -rwxr-xr-x 1 root root 109616 Sep 20 2022 touch - -rwxr-xr-x 1 root root 35664 Sep 20 2022 true - -rwxr-xr-x 1 root root 14568 Mar 22 2023 ulockmgr_server - -rwsr-xr-x 1 root root 35128 Mar 22 2023 umount - -rwxr-xr-x 1 root root 43888 Sep 20 2022 uname - -rwxr-xr-x 2 root root 2346 Apr 9 2022 uncompress - -rwxr-xr-x 1 root root 151344 Sep 20 2022 vdir - -rwxr-xr-x 1 root root 72024 Mar 22 2023 wdctl - lrwxrwxrwx 1 root root 8 Dec 19 2022 ypdomainname -> hostname - -rwxr-xr-x 1 root root 1984 Apr 9 2022 zcat - -rwxr-xr-x 1 root root 1678 Apr 9 2022 zcmp - -rwxr-xr-x 1 root root 6460 Apr 9 2022 zdiff - -rwxr-xr-x 1 root root 29 Apr 9 2022 zegrep - -rwxr-xr-x 1 root root 29 Apr 9 2022 zfgrep - -rwxr-xr-x 1 root root 2081 Apr 9 2022 zforce - -rwxr-xr-x 1 root root 8103 Apr 9 2022 zgrep - -rwxr-xr-x 1 root root 2206 Apr 9 2022 zless - -rwxr-xr-x 1 root root 1842 Apr 9 2022 zmore - -rwxr-xr-x 1 root root 4577 Apr 9 2022 znew -I: user script /srv/workspace/pbuilder/1582683/tmp/hooks/D02_print_environment finished + -rwxr-xr-x 1 root root 1265648 Feb 13 10:05 bash + -rwxr-xr-x 3 root root 39224 Sep 19 2022 bunzip2 + -rwxr-xr-x 3 root root 39224 Sep 19 2022 bzcat + lrwxrwxrwx 1 root root 6 Sep 19 2022 bzcmp -> bzdiff + -rwxr-xr-x 1 root root 2225 Sep 19 2022 bzdiff + lrwxrwxrwx 1 root root 6 Sep 19 2022 bzegrep -> bzgrep + -rwxr-xr-x 1 root root 4893 Nov 28 2021 bzexe + lrwxrwxrwx 1 root root 6 Sep 19 2022 bzfgrep -> bzgrep + -rwxr-xr-x 1 root root 3775 Sep 19 2022 bzgrep + -rwxr-xr-x 3 root root 39224 Sep 19 2022 bzip2 + -rwxr-xr-x 1 root root 14568 Sep 19 2022 bzip2recover + lrwxrwxrwx 1 root root 6 Sep 19 2022 bzless -> bzmore + -rwxr-xr-x 1 root root 1297 Sep 19 2022 bzmore + -rwxr-xr-x 1 root root 44016 Sep 21 2022 cat + -rwxr-xr-x 1 root root 68656 Sep 21 2022 chgrp + -rwxr-xr-x 1 root root 64496 Sep 21 2022 chmod + -rwxr-xr-x 1 root root 72752 Sep 21 2022 chown + -rwxr-xr-x 1 root root 151152 Sep 21 2022 cp + -rwxr-xr-x 1 root root 125640 Jan 6 03:20 dash + -rwxr-xr-x 1 root root 121904 Sep 21 2022 date + -rwxr-xr-x 1 root root 89240 Sep 21 2022 dd + -rwxr-xr-x 1 root root 102200 Sep 21 2022 df + -rwxr-xr-x 1 root root 151344 Sep 21 2022 dir + -rwxr-xr-x 1 root root 88656 Mar 24 00:02 dmesg + lrwxrwxrwx 1 root root 8 Dec 20 03:33 dnsdomainname -> hostname + lrwxrwxrwx 1 root root 8 Dec 20 03:33 domainname -> hostname + -rwxr-xr-x 1 root root 43856 Sep 21 2022 echo + -rwxr-xr-x 1 root root 41 Jan 25 04:43 egrep + -rwxr-xr-x 1 root root 35664 Sep 21 2022 false + -rwxr-xr-x 1 root root 41 Jan 25 04:43 fgrep + -rwxr-xr-x 1 root root 85600 Mar 24 00:02 findmnt + -rwsr-xr-x 1 root root 35128 Mar 23 22:35 fusermount + -rwxr-xr-x 1 root root 203152 Jan 25 04:43 grep + -rwxr-xr-x 2 root root 2346 Apr 10 2022 gunzip + -rwxr-xr-x 1 root root 6447 Apr 10 2022 gzexe + -rwxr-xr-x 1 root root 98136 Apr 10 2022 gzip + -rwxr-xr-x 1 root root 22680 Dec 20 03:33 hostname + -rwxr-xr-x 1 root root 72824 Sep 21 2022 ln + -rwxr-xr-x 1 root root 53024 Mar 24 02:40 login + -rwxr-xr-x 1 root root 151344 Sep 21 2022 ls + -rwxr-xr-x 1 root root 207168 Mar 24 00:02 lsblk + -rwxr-xr-x 1 root root 97552 Sep 21 2022 mkdir + -rwxr-xr-x 1 root root 72912 Sep 21 2022 mknod + -rwxr-xr-x 1 root root 43952 Sep 21 2022 mktemp + -rwxr-xr-x 1 root root 59712 Mar 24 00:02 more + -rwsr-xr-x 1 root root 59704 Mar 24 00:02 mount + -rwxr-xr-x 1 root root 18744 Mar 24 00:02 mountpoint + -rwxr-xr-x 1 root root 142968 Sep 21 2022 mv + lrwxrwxrwx 1 root root 8 Dec 20 03:33 nisdomainname -> hostname + lrwxrwxrwx 1 root root 14 Apr 3 20:25 pidof -> /sbin/killall5 + -rwxr-xr-x 1 root root 43952 Sep 21 2022 pwd + lrwxrwxrwx 1 root root 4 Feb 13 10:05 rbash -> bash + -rwxr-xr-x 1 root root 52112 Sep 21 2022 readlink + -rwxr-xr-x 1 root root 72752 Sep 21 2022 rm + -rwxr-xr-x 1 root root 56240 Sep 21 2022 rmdir + -rwxr-xr-x 1 root root 27560 Nov 3 06:31 run-parts + -rwxr-xr-x 1 root root 126424 Jan 6 09:55 sed + lrwxrwxrwx 1 root root 9 Apr 19 10:33 sh -> /bin/bash + -rwxr-xr-x 1 root root 43888 Sep 21 2022 sleep + -rwxr-xr-x 1 root root 85008 Sep 21 2022 stty + -rwsr-xr-x 1 root root 72000 Mar 24 00:02 su + -rwxr-xr-x 1 root root 39824 Sep 21 2022 sync + -rwxr-xr-x 1 root root 531984 Apr 7 04:25 tar + -rwxr-xr-x 1 root root 14520 Nov 3 06:31 tempfile + -rwxr-xr-x 1 root root 109616 Sep 21 2022 touch + -rwxr-xr-x 1 root root 35664 Sep 21 2022 true + -rwxr-xr-x 1 root root 14568 Mar 23 22:35 ulockmgr_server + -rwsr-xr-x 1 root root 35128 Mar 24 00:02 umount + -rwxr-xr-x 1 root root 43888 Sep 21 2022 uname + -rwxr-xr-x 2 root root 2346 Apr 10 2022 uncompress + -rwxr-xr-x 1 root root 151344 Sep 21 2022 vdir + -rwxr-xr-x 1 root root 72024 Mar 24 00:02 wdctl + lrwxrwxrwx 1 root root 8 Dec 20 03:33 ypdomainname -> hostname + -rwxr-xr-x 1 root root 1984 Apr 10 2022 zcat + -rwxr-xr-x 1 root root 1678 Apr 10 2022 zcmp + -rwxr-xr-x 1 root root 6460 Apr 10 2022 zdiff + -rwxr-xr-x 1 root root 29 Apr 10 2022 zegrep + -rwxr-xr-x 1 root root 29 Apr 10 2022 zfgrep + -rwxr-xr-x 1 root root 2081 Apr 10 2022 zforce + -rwxr-xr-x 1 root root 8103 Apr 10 2022 zgrep + -rwxr-xr-x 1 root root 2206 Apr 10 2022 zless + -rwxr-xr-x 1 root root 1842 Apr 10 2022 zmore + -rwxr-xr-x 1 root root 4577 Apr 10 2022 znew +I: user script /srv/workspace/pbuilder/1639232/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -335,7 +367,7 @@ Get: 128 http://deb.debian.org/debian bookworm/main amd64 pkgconf-bin amd64 1.8.1-1 [29.5 kB] Get: 129 http://deb.debian.org/debian bookworm/main amd64 pkgconf amd64 1.8.1-1 [25.9 kB] Get: 130 http://deb.debian.org/debian bookworm/main amd64 pkg-config amd64 1.8.1-1 [13.7 kB] -Fetched 73.7 MB in 1s (64.9 MB/s) +Fetched 73.7 MB in 2s (37.2 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19596 files and directories currently installed.) @@ -871,8 +903,19 @@ Writing extended state information... Building tag database... -> Finished parsing the build-deps +Reading package lists... +Building dependency tree... +Reading state information... +usrmerge is already the newest version (35). +0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/komposter-0+git20201216+ds/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../komposter_0+git20201216+ds-2_source.changes +I: user script /srv/workspace/pbuilder/1639232/tmp/hooks/A99_set_merged_usr starting +Re-configuring usrmerge... +removed '/etc/unsupported-skip-usrmerge-conversion' +The system has been successfully converted. +I: user script /srv/workspace/pbuilder/1639232/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/komposter-0+git20201216+ds/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../komposter_0+git20201216+ds-2_source.changes dpkg-buildpackage: info: source package komposter dpkg-buildpackage: info: source version 0+git20201216+ds-2 dpkg-buildpackage: info: source distribution unstable @@ -898,7 +941,7 @@ /build/komposter-0+git20201216+ds/missing: Unknown `--is-lightweight' option Try `/build/komposter-0+git20201216+ds/missing --help' for more information configure: WARNING: 'missing' script is too old or missing -checking for a thread-safe mkdir -p... /bin/mkdir -p +checking for a thread-safe mkdir -p... /usr/bin/mkdir -p checking for gawk... no checking for mawk... mawk checking whether make sets $(MAKE)... yes @@ -919,8 +962,8 @@ checking whether ln -s works... yes checking whether make sets $(MAKE)... (cached) yes checking how to run the C preprocessor... gcc -E -checking for grep that handles long lines and -e... /bin/grep -checking for egrep... /bin/grep -E +checking for grep that handles long lines and -e... /usr/bin/grep +checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes @@ -1057,7 +1100,7 @@ make[1]: Entering directory '/build/komposter-0+git20201216+ds' sed -i s,-march=native,,g Makefile dh_auto_build - make -j16 + make -j15 make[2]: Entering directory '/build/komposter-0+git20201216+ds' gcc -DPACKAGE_NAME=\"komposter\" -DPACKAGE_TARNAME=\"komposter\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"komposter\ 2.0.0\" -DPACKAGE_BUGREPORT=\"email\" -DPACKAGE_URL=\"\" -DPACKAGE=\"komposter\" -DVERSION=\"2.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_FREETYPE=1 -DHAVE_LIBGLUT=1 -DENABLE_GLUT=1 -DENABLE_OPENAL=1 -DHAVE_LIBGL=1 -DHAVE_LIBGLU=1 -DENABLE_OPENGL=1 -DHAVE_LIBM=1 -DHAVE_LIBPTHREAD=1 -I. -DRESOURCEPATH=\"/usr/share/komposter/\" -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -g -O2 -ffile-prefix-map=/build/komposter-0+git20201216+ds=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -O3 -fcx-limited-range -ffinite-math-only -fno-math-errno -fno-rounding-math -fno-signaling-nans -fno-trapping-math -fgcse-las -fgcse-sm -fsee -fsingle-precision-constant -fomit-frame-pointer -Wcast-align -Wconversion -Wdisabled-optimization -Wextra -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wno-multichar -Wpacked -Wredundant-decls -Wshadow -Wswitch-default -Wundef -Wwrite-strings -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wstrict-prototypes -ftracer -fweb -pipe -Werror-implicit-function-declaration -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL -c -o about.o about.c gcc -DPACKAGE_NAME=\"komposter\" -DPACKAGE_TARNAME=\"komposter\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"komposter\ 2.0.0\" -DPACKAGE_BUGREPORT=\"email\" -DPACKAGE_URL=\"\" -DPACKAGE=\"komposter\" -DVERSION=\"2.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_FREETYPE=1 -DHAVE_LIBGLUT=1 -DENABLE_GLUT=1 -DENABLE_OPENAL=1 -DHAVE_LIBGL=1 -DHAVE_LIBGLU=1 -DENABLE_OPENGL=1 -DHAVE_LIBM=1 -DHAVE_LIBPTHREAD=1 -I. -DRESOURCEPATH=\"/usr/share/komposter/\" -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -g -O2 -ffile-prefix-map=/build/komposter-0+git20201216+ds=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -O3 -fcx-limited-range -ffinite-math-only -fno-math-errno -fno-rounding-math -fno-signaling-nans -fno-trapping-math -fgcse-las -fgcse-sm -fsee -fsingle-precision-constant -fomit-frame-pointer -Wcast-align -Wconversion -Wdisabled-optimization -Wextra -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wno-multichar -Wpacked -Wredundant-decls -Wshadow -Wswitch-default -Wundef -Wwrite-strings -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wstrict-prototypes -ftracer -fweb -pipe -Werror-implicit-function-declaration -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL -c -o audio.o audio.c @@ -1079,7 +1122,6 @@ gcc -DPACKAGE_NAME=\"komposter\" -DPACKAGE_TARNAME=\"komposter\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"komposter\ 2.0.0\" -DPACKAGE_BUGREPORT=\"email\" -DPACKAGE_URL=\"\" -DPACKAGE=\"komposter\" -DVERSION=\"2.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_FREETYPE=1 -DHAVE_LIBGLUT=1 -DENABLE_GLUT=1 -DENABLE_OPENAL=1 -DHAVE_LIBGL=1 -DHAVE_LIBGLU=1 -DENABLE_OPENGL=1 -DHAVE_LIBM=1 -DHAVE_LIBPTHREAD=1 -I. -DRESOURCEPATH=\"/usr/share/komposter/\" -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -g -O2 -ffile-prefix-map=/build/komposter-0+git20201216+ds=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -O3 -fcx-limited-range -ffinite-math-only -fno-math-errno -fno-rounding-math -fno-signaling-nans -fno-trapping-math -fgcse-las -fgcse-sm -fsee -fsingle-precision-constant -fomit-frame-pointer -Wcast-align -Wconversion -Wdisabled-optimization -Wextra -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wno-multichar -Wpacked -Wredundant-decls -Wshadow -Wswitch-default -Wundef -Wwrite-strings -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wstrict-prototypes -ftracer -fweb -pipe -Werror-implicit-function-declaration -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL -c -o patch.o patch.c gcc -DPACKAGE_NAME=\"komposter\" -DPACKAGE_TARNAME=\"komposter\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"komposter\ 2.0.0\" -DPACKAGE_BUGREPORT=\"email\" -DPACKAGE_URL=\"\" -DPACKAGE=\"komposter\" -DVERSION=\"2.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_FREETYPE=1 -DHAVE_LIBGLUT=1 -DENABLE_GLUT=1 -DENABLE_OPENAL=1 -DHAVE_LIBGL=1 -DHAVE_LIBGLU=1 -DENABLE_OPENGL=1 -DHAVE_LIBM=1 -DHAVE_LIBPTHREAD=1 -I. -DRESOURCEPATH=\"/usr/share/komposter/\" -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -g -O2 -ffile-prefix-map=/build/komposter-0+git20201216+ds=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -O3 -fcx-limited-range -ffinite-math-only -fno-math-errno -fno-rounding-math -fno-signaling-nans -fno-trapping-math -fgcse-las -fgcse-sm -fsee -fsingle-precision-constant -fomit-frame-pointer -Wcast-align -Wconversion -Wdisabled-optimization -Wextra -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wno-multichar -Wpacked -Wredundant-decls -Wshadow -Wswitch-default -Wundef -Wwrite-strings -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wstrict-prototypes -ftracer -fweb -pipe -Werror-implicit-function-declaration -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL -c -o pattern.o pattern.c gcc -DPACKAGE_NAME=\"komposter\" -DPACKAGE_TARNAME=\"komposter\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"komposter\ 2.0.0\" -DPACKAGE_BUGREPORT=\"email\" -DPACKAGE_URL=\"\" -DPACKAGE=\"komposter\" -DVERSION=\"2.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_FREETYPE=1 -DHAVE_LIBGLUT=1 -DENABLE_GLUT=1 -DENABLE_OPENAL=1 -DHAVE_LIBGL=1 -DHAVE_LIBGLU=1 -DENABLE_OPENGL=1 -DHAVE_LIBM=1 -DHAVE_LIBPTHREAD=1 -I. -DRESOURCEPATH=\"/usr/share/komposter/\" -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -g -O2 -ffile-prefix-map=/build/komposter-0+git20201216+ds=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -O3 -fcx-limited-range -ffinite-math-only -fno-math-errno -fno-rounding-math -fno-signaling-nans -fno-trapping-math -fgcse-las -fgcse-sm -fsee -fsingle-precision-constant -fomit-frame-pointer -Wcast-align -Wconversion -Wdisabled-optimization -Wextra -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wno-multichar -Wpacked -Wredundant-decls -Wshadow -Wswitch-default -Wundef -Wwrite-strings -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wstrict-prototypes -ftracer -fweb -pipe -Werror-implicit-function-declaration -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL -c -o sequencer.o sequencer.c -gcc -DPACKAGE_NAME=\"komposter\" -DPACKAGE_TARNAME=\"komposter\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"komposter\ 2.0.0\" -DPACKAGE_BUGREPORT=\"email\" -DPACKAGE_URL=\"\" -DPACKAGE=\"komposter\" -DVERSION=\"2.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_FREETYPE=1 -DHAVE_LIBGLUT=1 -DENABLE_GLUT=1 -DENABLE_OPENAL=1 -DHAVE_LIBGL=1 -DHAVE_LIBGLU=1 -DENABLE_OPENGL=1 -DHAVE_LIBM=1 -DHAVE_LIBPTHREAD=1 -I. -DRESOURCEPATH=\"/usr/share/komposter/\" -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -g -O2 -ffile-prefix-map=/build/komposter-0+git20201216+ds=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -O3 -fcx-limited-range -ffinite-math-only -fno-math-errno -fno-rounding-math -fno-signaling-nans -fno-trapping-math -fgcse-las -fgcse-sm -fsee -fsingle-precision-constant -fomit-frame-pointer -Wcast-align -Wconversion -Wdisabled-optimization -Wextra -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wno-multichar -Wpacked -Wredundant-decls -Wshadow -Wswitch-default -Wundef -Wwrite-strings -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wstrict-prototypes -ftracer -fweb -pipe -Werror-implicit-function-declaration -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL -c -o shader.o shader.c In file included from dotfile.c:16: dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] 16 | int dotfile_load(); @@ -1110,11 +1152,12 @@ | ^~~~~~~~~~~~ dotfile.c: In function 'dotfile_save': dotfile.c:78:5: warning: old-style function definition [-Wold-style-definition] -gcc -DPACKAGE_NAME=\"komposter\" -DPACKAGE_TARNAME=\"komposter\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"komposter\ 2.0.0\" -DPACKAGE_BUGREPORT=\"email\" -DPACKAGE_URL=\"\" -DPACKAGE=\"komposter\" -DVERSION=\"2.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_FREETYPE=1 -DHAVE_LIBGLUT=1 -DENABLE_GLUT=1 -DENABLE_OPENAL=1 -DHAVE_LIBGL=1 -DHAVE_LIBGLU=1 -DENABLE_OPENGL=1 -DHAVE_LIBM=1 -DHAVE_LIBPTHREAD=1 -I. -DRESOURCEPATH=\"/usr/share/komposter/\" -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -g -O2 -ffile-prefix-map=/build/komposter-0+git20201216+ds=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -O3 -fcx-limited-range -ffinite-math-only -fno-math-errno -fno-rounding-math -fno-signaling-nans -fno-trapping-math -fgcse-las -fgcse-sm -fsee -fsingle-precision-constant -fomit-frame-pointer -Wcast-align -Wconversion -Wdisabled-optimization -Wextra -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wno-multichar -Wpacked -Wredundant-decls -Wshadow -Wswitch-default -Wundef -Wwrite-strings -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wstrict-prototypes -ftracer -fweb -pipe -Werror-implicit-function-declaration -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL -c -o synthesizer.o synthesizer.c +gcc -DPACKAGE_NAME=\"komposter\" -DPACKAGE_TARNAME=\"komposter\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"komposter\ 2.0.0\" -DPACKAGE_BUGREPORT=\"email\" -DPACKAGE_URL=\"\" -DPACKAGE=\"komposter\" -DVERSION=\"2.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_FREETYPE=1 -DHAVE_LIBGLUT=1 -DENABLE_GLUT=1 -DENABLE_OPENAL=1 -DHAVE_LIBGL=1 -DHAVE_LIBGLU=1 -DENABLE_OPENGL=1 -DHAVE_LIBM=1 -DHAVE_LIBPTHREAD=1 -I. -DRESOURCEPATH=\"/usr/share/komposter/\" -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -g -O2 -ffile-prefix-map=/build/komposter-0+git20201216+ds=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -O3 -fcx-limited-range -ffinite-math-only -fno-math-errno -fno-rounding-math -fno-signaling-nans -fno-trapping-math -fgcse-las -fgcse-sm -fsee -fsingle-precision-constant -fomit-frame-pointer -Wcast-align -Wconversion -Wdisabled-optimization -Wextra -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wno-multichar -Wpacked -Wredundant-decls -Wshadow -Wswitch-default -Wundef -Wwrite-strings -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wstrict-prototypes -ftracer -fweb -pipe -Werror-implicit-function-declaration -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL -c -o shader.o shader.c In file included from fileops.c:19: modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] 152 | void calc_supersaw_tables(); | ^~~~ +gcc -DPACKAGE_NAME=\"komposter\" -DPACKAGE_TARNAME=\"komposter\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"komposter\ 2.0.0\" -DPACKAGE_BUGREPORT=\"email\" -DPACKAGE_URL=\"\" -DPACKAGE=\"komposter\" -DVERSION=\"2.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_FREETYPE=1 -DHAVE_LIBGLUT=1 -DENABLE_GLUT=1 -DENABLE_OPENAL=1 -DHAVE_LIBGL=1 -DHAVE_LIBGLU=1 -DENABLE_OPENGL=1 -DHAVE_LIBM=1 -DHAVE_LIBPTHREAD=1 -I. -DRESOURCEPATH=\"/usr/share/komposter/\" -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -g -O2 -ffile-prefix-map=/build/komposter-0+git20201216+ds=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -O3 -fcx-limited-range -ffinite-math-only -fno-math-errno -fno-rounding-math -fno-signaling-nans -fno-trapping-math -fgcse-las -fgcse-sm -fsee -fsingle-precision-constant -fomit-frame-pointer -Wcast-align -Wconversion -Wdisabled-optimization -Wextra -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wno-multichar -Wpacked -Wredundant-decls -Wshadow -Wswitch-default -Wundef -Wwrite-strings -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wstrict-prototypes -ftracer -fweb -pipe -Werror-implicit-function-declaration -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL -c -o synthesizer.o synthesizer.c In file included from audio.c:16: audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] 56 | int audio_exportwav(); //char *filename); @@ -1285,6 +1328,12 @@ audio.c:662:46: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 662 | for(i=0;i<8;i++) mod_ddata(voice, mi)[0]=0; | ^ +In file included from widgets.h:23, + from dialog.h:16, + from dialog.c:13: +modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 152 | void calc_supersaw_tables(); + | ^~~~ audio.c:637:5: warning: switch missing default case [-Wswitch-default] 637 | switch(mt) { | ^~~~~~ @@ -1297,13 +1346,39 @@ audio.c:722:19: warning: conversion from 'long int' to 'unsigned int' may change value [-Wconversion] 722 | w.wav_chunksize=36+render_bufferlen*2*2; | ^~ +dialog.c: In function 'dialog_open': +dialog.c:43:18: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] + 43 | dialog_drawfunc=draw; + | ^ +dialog.c:44:19: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] + 44 | dialog_hoverfunc=hover; + | ^ +dialog.c:45:19: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] + 45 | dialog_clickfunc=click; + | ^ +dialog.c: In function 'dialog_bindkeyboard': +dialog.c:51:16: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] + 51 | dialog_kbfunc=kbfunc; + | ^ audio.c:723:23: warning: conversion to 'long unsigned int' from 'long int' may change the sign of the result [-Wsign-conversion] 723 | w.wav_sub2chunksize=render_bufferlen*2*2; | ^~~~~~~~~~~~~~~~ +dialog.c: In function 'dialog_binddrag': +dialog.c:56:18: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] + 56 | dialog_dragfunc=dragfunc; + | ^ +dialog.c: In function 'dialog_bindspecial': +dialog.c:61:21: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] + 61 | dialog_specialfunc=specialfunc; + | ^ audio.c:727:56: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'long int' may change the sign of the result [-Wsign-conversion] 727 | fwrite(render_buffer, sizeof(short), render_bufferlen*2, f); | ~~~~~~~~~~~~~~~~^~ -gcc -DPACKAGE_NAME=\"komposter\" -DPACKAGE_TARNAME=\"komposter\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"komposter\ 2.0.0\" -DPACKAGE_BUGREPORT=\"email\" -DPACKAGE_URL=\"\" -DPACKAGE=\"komposter\" -DVERSION=\"2.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_FREETYPE=1 -DHAVE_LIBGLUT=1 -DENABLE_GLUT=1 -DENABLE_OPENAL=1 -DHAVE_LIBGL=1 -DHAVE_LIBGLU=1 -DENABLE_OPENGL=1 -DHAVE_LIBM=1 -DHAVE_LIBPTHREAD=1 -I. -DRESOURCEPATH=\"/usr/share/komposter/\" -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -g -O2 -ffile-prefix-map=/build/komposter-0+git20201216+ds=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -O3 -fcx-limited-range -ffinite-math-only -fno-math-errno -fno-rounding-math -fno-signaling-nans -fno-trapping-math -fgcse-las -fgcse-sm -fsee -fsingle-precision-constant -fomit-frame-pointer -Wcast-align -Wconversion -Wdisabled-optimization -Wextra -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wno-multichar -Wpacked -Wredundant-decls -Wshadow -Wswitch-default -Wundef -Wwrite-strings -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wstrict-prototypes -ftracer -fweb -pipe -Werror-implicit-function-declaration -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL -c -o widgets.o widgets.c +In file included from pattern.h:18, + from pattern.c:13: +audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 56 | int audio_exportwav(); //char *filename); + | ^~~ audio.c:708:3: warning: '__builtin_strncpy' output truncated before terminating nul copying 4 bytes from a string of the same length [-Wstringop-truncation] 708 | strncpy((char*)&w.wav_chunkid, "RIFF", 4); | ^ @@ -1316,11 +1391,7 @@ audio.c:719:3: warning: '__builtin_strncpy' output truncated before terminating nul copying 4 bytes from a string of the same length [-Wstringop-truncation] 719 | strncpy((char*)&w.wav_sub2chunkid, "data", 4); | ^ -In file included from pattern.h:18, - from buffermm.h:17: -audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 56 | int audio_exportwav(); //char *filename); - | ^~~ +gcc -DPACKAGE_NAME=\"komposter\" -DPACKAGE_TARNAME=\"komposter\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"komposter\ 2.0.0\" -DPACKAGE_BUGREPORT=\"email\" -DPACKAGE_URL=\"\" -DPACKAGE=\"komposter\" -DVERSION=\"2.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_FREETYPE=1 -DHAVE_LIBGLUT=1 -DENABLE_GLUT=1 -DENABLE_OPENAL=1 -DHAVE_LIBGL=1 -DHAVE_LIBGLU=1 -DENABLE_OPENGL=1 -DHAVE_LIBM=1 -DHAVE_LIBPTHREAD=1 -I. -DRESOURCEPATH=\"/usr/share/komposter/\" -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -g -O2 -ffile-prefix-map=/build/komposter-0+git20201216+ds=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -O3 -fcx-limited-range -ffinite-math-only -fno-math-errno -fno-rounding-math -fno-signaling-nans -fno-trapping-math -fgcse-las -fgcse-sm -fsee -fsingle-precision-constant -fomit-frame-pointer -Wcast-align -Wconversion -Wdisabled-optimization -Wextra -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wno-multichar -Wpacked -Wredundant-decls -Wshadow -Wswitch-default -Wundef -Wwrite-strings -Wbad-function-cast -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wstrict-prototypes -ftracer -fweb -pipe -Werror-implicit-function-declaration -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL -c -o widgets.o widgets.c console.c: In function 'console_print': console.c:44:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] 44 | render_text(backlog[logptr], x+1, y+1, 2, ((unsigned char)(a)<<24)|0x00000000, 0); @@ -1375,368 +1446,49 @@ about.c:42:51: warning: unused parameter 'y' [-Wunused-parameter] 42 | void about_keyboard(unsigned char key, int x, int y) | ~~~~^ -In file included from synthesizer.h:29, - from buffermm.h:18: -dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 16 | int dotfile_load(); - | ^~~ -dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 17 | int dotfile_save(); - | ^~~ -synthesizer.h:84:6: warning: redundant redeclaration of 'synth_stackify' [-Wredundant-decls] - 84 | void synth_stackify(int syn); - | ^~~~~~~~~~~~~~ -In file included from synthesizer.h:31: -fileops.h:62:6: note: previous declaration of 'synth_stackify' with type 'void(int)' - 62 | void synth_stackify(int syn); - | ^~~~~~~~~~~~~~ -synthesizer.h:85:5: warning: redundant redeclaration of 'synth_trace' [-Wredundant-decls] - 85 | int synth_trace(int syn, int pm, int fifo); - | ^~~~~~~~~~~ -fileops.h:63:5: note: previous declaration of 'synth_trace' with type 'int(int, int, int)' - 63 | int synth_trace(int syn, int pm, int top); - | ^~~~~~~~~~~ -buffermm.c: In function 'kmm_alloc': -buffermm.c:97:69: warning: format '%d' expects argument of type 'int', but argument 3 has type 'long unsigned int' [-Wformat=] - 97 | printf("kmm: module data buffer allocated from %08lx - len %d (%d bytes), v %d s %d mi %d mt %d\n", - | ~^ - | | - | int - | %ld - 98 | (unsigned long)buffer, len, len*sizeof(u32), voice,synth,module,modtype); - | ~~~ - | | - | long unsigned int -buffermm.c:97:73: warning: format '%d' expects argument of type 'int', but argument 4 has type 'long unsigned int' [-Wformat=] - 97 | printf("kmm: module data buffer allocated from %08lx - len %d (%d bytes), v %d s %d mi %d mt %d\n", - | ~^ - | | - | int - | %ld - 98 | (unsigned long)buffer, len, len*sizeof(u32), voice,synth,module,modtype); - | ~~~~~~~~~~~~~~~ - | | - | long unsigned int -In file included from widgets.h:23, - from dialog.h:16, - from filedialog.c:13: -modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 152 | void calc_supersaw_tables(); - | ^~~~ -In file included from pattern.h:18, - from pattern.c:13: -audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 56 | int audio_exportwav(); //char *filename); - | ^~~ -In file included from sequencer.h:18, - from sequencer.c:13: +In file included from modules.c:18: audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] 56 | int audio_exportwav(); //char *filename); | ^~~ -In file included from widgets.h:23, - from dialog.h:16, - from dialog.c:13: -modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 152 | void calc_supersaw_tables(); - | ^~~~ -dialog.c: In function 'dialog_open': -dialog.c:43:18: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] - 43 | dialog_drawfunc=draw; - | ^ -dialog.c:44:19: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] - 44 | dialog_hoverfunc=hover; - | ^ -dialog.c:45:19: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] - 45 | dialog_clickfunc=click; - | ^ -dialog.c: In function 'dialog_bindkeyboard': -dialog.c:51:16: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] - 51 | dialog_kbfunc=kbfunc; - | ^ -dialog.c: In function 'dialog_binddrag': -dialog.c:56:18: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] - 56 | dialog_dragfunc=dragfunc; - | ^ -dialog.c: In function 'dialog_bindspecial': -dialog.c:61:21: warning: ISO C forbids assignment between function pointer and 'void *' [-Wpedantic] - 61 | dialog_specialfunc=specialfunc; - | ^ -font.c:61:14: warning: no previous prototype for 'tpow2' [-Wmissing-prototypes] - 61 | unsigned int tpow2(unsigned int x) - | ^~~~~ -font.c: In function 'font_init': -font.c:92:50: warning: conversion to 'FT_UInt' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] - 92 | err=FT_Set_Pixel_Sizes(font[i], 0, fontsize[i]); - | ~~~~~~~~^~~ -font.c:108:35: warning: conversion to 'FT_ULong' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] - 108 | err=FT_Load_Char(font[f], rc, FT_LOAD_RENDER); - | ^~ -font.c:115:28: warning: conversion from 'FT_Pos' {aka 'long int'} to 'int' may change value [-Wconversion] - 115 | font_advance[f][c]=slot->advance.x >> 6; - | ^~~~ -font.c:118:26: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 118 | font_width[f][c]=slot->bitmap.width; - | ^~~~ -font.c:119:27: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 119 | font_height[f][c]=slot->bitmap.rows; - | ^~~~ -font.c:120:14: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 120 | texw=tpow2(slot->bitmap.width); - | ^~~~~ -font.c:121:14: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 121 | texh=tpow2(slot->bitmap.rows); - | ^~~~~ -font.c:126:38: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] - 126 | font_bitmap[f][c]=calloc(texw*texh, sizeof(GLuint)); - | ~~~~^~~~~ -font.c:127:19: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] - 127 | for (j=0;jbitmap.rows;j++) - | ^ -font.c:129:20: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] - 129 | for(i=0;ibitmap.width;i++) { - | ^ -font.c:131:51: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 131 | font_bitmap[f][c][ ( slot->bitmap.rows-(j+1) )*texw + i] = p; - | ^ -font.c:131:59: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 131 | font_bitmap[f][c][ ( slot->bitmap.rows-(j+1) )*texw + i] = p; - | ^ -In file included from patch.h:20, - from patch.c:13: -modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 152 | void calc_supersaw_tables(); - | ^~~~ -font.c:131:65: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 131 | font_bitmap[f][c][ ( slot->bitmap.rows-(j+1) )*texw + i] = p; - | ^ -filedialog.c: In function 'filedialog_draw': -filedialog.c:91:55: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 91 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 244, 420, "", 0); - | ^~ -widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' - 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); - | ~~~~~~^~~~~ -filedialog.c:95:60: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 95 | draw_textbox((DS_WIDTH/2)-10, (DS_HEIGHT/2)-8, 160, 370, "", 0); - | ^~ -widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' - 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); - | ~~~~~~^~~~~ -filedialog.c:97:7: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 97 | fd->sliderpos, 12, fd->g.gl_pathc, - | ~~^~~~~~~~~~~ -filedialog.c:97:29: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'float' may change value [-Wconversion] - 97 | fd->sliderpos, 12, fd->g.gl_pathc, - | ~~~~~^~~~~~~~~ -filedialog.c:101:13: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] - 101 | while ( (ig.gl_pathc) && (i<(fd->sliderpos+12)) ) { - | ^ -filedialog.c:106:59: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 106 | glVertex2f( ((DS_WIDTH/2)-195), ((DS_HEIGHT/2)-88) + (i-fd->sliderpos)*13); - | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ -filedialog.c:107:63: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 107 | glVertex2f( ((DS_WIDTH/2)-195)+370, ((DS_HEIGHT/2)-88) + (i-fd->sliderpos)*13); - | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ -filedialog.c:108:85: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 108 | glVertex2f( ((DS_WIDTH/2)-195)+370, ((DS_HEIGHT/2)-88) + (i-fd->sliderpos)*13+13); - | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ -filedialog.c:109:81: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 109 | glVertex2f( ((DS_WIDTH/2)-195), ((DS_HEIGHT/2)-88) + (i-fd->sliderpos)*13+13); - | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ -filedialog.c:119:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 119 | (DS_HEIGHT/2)-78+(i-fd->sliderpos)*13, 2, 0xcfa0a0c0, 0); - | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ -filedialog.c:122:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 122 | (DS_HEIGHT/2)-78+(i-fd->sliderpos)*13, 2, 0xcfa0a0c0, 2); - | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ -font.c: In function 'render_text': -font.c:165:7: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 165 | sw+=font_advance[fontnr][(int)text[n]]; - | ^~ -font.c:171:19: warning: conversion from 'long unsigned int' to 'float' may change value [-Wconversion] - 171 | if (align==1) xp-=(sw/2); - | ^~ -font.c:172:19: warning: conversion from 'long unsigned int' to 'float' may change value [-Wconversion] - 172 | if (align==2) xp-=sw; - | ^~ -font.c:176:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 176 | if ((int)text[n]=='\n') { yp+=fontsize[fontnr]+2; xp=x; n++; continue; } - | ^~ -font.c:178:68: warning: conversion from 'unsigned int' to 'GLubyte' {aka 'unsigned char'} may change value [-Wconversion] - 178 | glColor4ub((color>>16)&0xff, (color>>8)&0xff, color&0xff, color>>24); - | ~~~~~^~~~ -font.c:182:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 182 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]], yp+font_yoffset[fontnr][(int)text[n]]); - | ^ -font.c:182:59: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 182 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]], yp+font_yoffset[fontnr][(int)text[n]]); - | ^ -font.c:184:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 184 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]]+font_width[fontnr][(int)text[n]], yp+font_yoffset[fontnr][(int)text[n]]); - | ^ In file included from buffermm.h:16, - from sequencer.h:19: + from modules.c:19: modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] 152 | void calc_supersaw_tables(); | ^~~~ -font.c:184:55: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 184 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]]+font_width[fontnr][(int)text[n]], yp+font_yoffset[fontnr][(int)text[n]]); - | ^ -font.c:184:92: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 184 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]]+font_width[fontnr][(int)text[n]], yp+font_yoffset[fontnr][(int)text[n]]); - | ^ -font.c:186:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 186 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]]+font_width[fontnr][(int)text[n]], - | ^ -font.c:186:55: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 186 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]]+font_width[fontnr][(int)text[n]], - | ^ -font.c:187:18: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 187 | yp+font_yoffset[fontnr][(int)text[n]]+font_height[fontnr][(int)text[n]]); - | ^ -font.c:187:53: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 187 | yp+font_yoffset[fontnr][(int)text[n]]+font_height[fontnr][(int)text[n]]); - | ^ -font.c:189:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 189 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]], - | ^ -font.c:190:18: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 190 | yp+font_yoffset[fontnr][(int)text[n]]+font_height[fontnr][(int)text[n]]); - | ^ -font.c:190:53: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 190 | yp+font_yoffset[fontnr][(int)text[n]]+font_height[fontnr][(int)text[n]]); - | ^ -font.c:194:7: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 194 | xp+=font_advance[fontnr][(int)text[n]]; - | ^~ -filedialog.c:129:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 129 | (DS_HEIGHT/2)-78+(i-fd->sliderpos)*13, 2, fcol, 0); - | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ -filedialog.c:129:51: warning: conversion from 'long unsigned int' to 'unsigned int' may change value [-Wconversion] - 129 | (DS_HEIGHT/2)-78+(i-fd->sliderpos)*13, 2, fcol, 0); - | ^~~~ -filedialog.c:136:56: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 136 | draw_button((DS_WIDTH/2)+192, (DS_HEIGHT/2)+100, 16, "OK", fd->hover[FDUI_OK]); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -filedialog.c: In function 'filedialog_hover': -filedialog.c:143:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 143 | fd->hover[FDUI_FILENAME]=hovertest_box(x, y, (DS_WIDTH/2)+20, (DS_HEIGHT/2)+100, 16, 300); - | ^ -filedialog.c:143:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 143 | fd->hover[FDUI_FILENAME]=hovertest_box(x, y, (DS_WIDTH/2)+20, (DS_HEIGHT/2)+100, 16, 300); - | ^ -filedialog.c:144:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 144 | fd->hover[FDUI_OK]=hovertest_box(x, y, (DS_WIDTH/2)+192, (DS_HEIGHT/2)+100, 16, 16); - | ^ -filedialog.c:144:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 144 | fd->hover[FDUI_OK]=hovertest_box(x, y, (DS_WIDTH/2)+192, (DS_HEIGHT/2)+100, 16, 16); - | ^ -filedialog.c:145:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 145 | fd->hover[FDUI_VSLIDER]=hovertest_vslider(x, y, - | ^ -filedialog.c:145:48: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 145 | fd->hover[FDUI_VSLIDER]=hovertest_vslider(x, y, - | ^ -filedialog.c:147:7: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 147 | fd->sliderpos, 12, fd->g.gl_pathc); - | ~~^~~~~~~~~~~ -filedialog.c:147:29: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'float' may change value [-Wconversion] - 147 | fd->sliderpos, 12, fd->g.gl_pathc); - | ~~~~~^~~~~~~~~ -filedialog.c:150:21: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 150 | if (hovertest_box(x, y, (DS_WIDTH/2)-10, (DS_HEIGHT/2)-8, 160, 370)) { - | ^ -filedialog.c:150:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 150 | if (hovertest_box(x, y, (DS_WIDTH/2)-10, (DS_HEIGHT/2)-8, 160, 370)) { - | ^ -filedialog.c: In function 'filedialog_click': -filedialog.c:164:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 164 | if (state==GLUT_DOWN && !hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2), 244, 420)) { dialog_close(); return; } - | ^ -filedialog.c:164:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 164 | if (state==GLUT_DOWN && !hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2), 244, 420)) { dialog_close(); return; } - | ^ -filedialog.c:160:7: warning: variable 'r' set but not used [-Wunused-but-set-variable] - 160 | int r; - | ^ -filedialog.c: In function 'filedialog_keyboard': -filedialog.c:241:29: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion] - 241 | textbox_edit(fd->fname, key, 45); - | ^~~ -filedialog.c:259:27: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion] - 259 | textbox_edit(fd->fname, key, 45); - | ^~~ -filedialog.c: In function 'filedialog_drag': -filedialog.c:271:9: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'float' may change value [-Wconversion] - 271 | cip=fd->g.gl_pathc; // files total - | ^~ -filedialog.c:273:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 273 | f= ( (cip-cos) * (y - fd->slider_yofs) ) / (sbh-slh) ; - | ^ -filedialog.c:274:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 274 | fd->sliderpos=fd->slider_dragstart+f; - | ^ -filedialog.c:274:19: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] - 274 | fd->sliderpos=fd->slider_dragstart+f; - | ^~ -filedialog.c:275:48: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] - 275 | if (fd->sliderpos>(cip-cos)) fd->sliderpos=(cip-cos); - | ^ -filedialog.c:263:42: warning: unused parameter 'x' [-Wunused-parameter] - 263 | void filedialog_drag(filedialog *fd, int x, int y) - | ~~~~^ -In file included from modules.c:18: -audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 56 | int audio_exportwav(); //char *filename); - | ^~~ -In file included from buffermm.h:16, - from modules.c:19: +In file included from widgets.h:23, + from dialog.h:16, + from filedialog.c:13: modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] 152 | void calc_supersaw_tables(); | ^~~~ -In file included from synthesizer.h:24, - from patch.h:21: -audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 56 | int audio_exportwav(); //char *filename); - | ^~~ In file included from widgets.h:23, from pattern.h:22: modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] 152 | void calc_supersaw_tables(); | ^~~~ -In file included from synthesizer.h:29: -dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 16 | int dotfile_load(); - | ^~~ -dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 17 | int dotfile_save(); - | ^~~ -synthesizer.h:84:6: warning: redundant redeclaration of 'synth_stackify' [-Wredundant-decls] - 84 | void synth_stackify(int syn); - | ^~~~~~~~~~~~~~ -In file included from synthesizer.h:31: -fileops.h:62:6: note: previous declaration of 'synth_stackify' with type 'void(int)' - 62 | void synth_stackify(int syn); - | ^~~~~~~~~~~~~~ -synthesizer.h:85:5: warning: redundant redeclaration of 'synth_trace' [-Wredundant-decls] - 85 | int synth_trace(int syn, int pm, int fifo); - | ^~~~~~~~~~~ -fileops.h:63:5: note: previous declaration of 'synth_trace' with type 'int(int, int, int)' - 63 | int synth_trace(int syn, int pm, int top); - | ^~~~~~~~~~~ pattern.c: In function 'pattern_init': pattern.c:100:6: warning: old-style function definition [-Wold-style-definition] 100 | void pattern_init() | ^~~~~~~~~~~~ +filedialog.c: In function 'filedialog_draw': +filedialog.c:91:55: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 91 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 244, 420, "", 0); + | ^~ +widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' + 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); + | ~~~~~~^~~~~ pattern.c: At top level: pattern.c:119:6: warning: function declaration isn't a prototype [-Wstrict-prototypes] 119 | void pattern_toggleplayback() | ^~~~~~~~~~~~~~~~~~~~~~ +filedialog.c:95:60: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 95 | draw_textbox((DS_WIDTH/2)-10, (DS_HEIGHT/2)-8, 160, 370, "", 0); + | ^~ pattern.c: In function 'pattern_toggleplayback': pattern.c:119:6: warning: old-style function definition [-Wold-style-definition] +widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' + 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); + | ~~~~~~^~~~~ pattern.c: At top level: pattern.c:140:5: warning: no previous prototype for 'pattern_cursorpos' [-Wmissing-prototypes] 140 | int pattern_cursorpos(int x, int y, int *note) @@ -1839,16 +1591,12 @@ pattern.c:195:79: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 195 | piano_start, (DS_WIDTH-(PIANOROLL_X+4))/PIANOROLL_CELLWIDTH, pattlen[cpatt]*(beats_per_measure*beatdiv)); | ^ -patch.c: In function 'patch_init': pattern.c:194:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] 194 | slide_hover=hovertest_hslider(x,y,PIANOROLL_X, PIANOROLL_Y+12, (DS_WIDTH-(PIANOROLL_X+6)), 12, | ^ pattern.c:194:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] 194 | slide_hover=hovertest_hslider(x,y,PIANOROLL_X, PIANOROLL_Y+12, (DS_WIDTH-(PIANOROLL_X+6)), 12, | ^ -patch.c:96:6: warning: old-style function definition [-Wold-style-definition] - 96 | void patch_init() - | ^~~~~~~~~~ pattern.c:195:4: warning: conversion from 'int' to 'float' may change value [-Wconversion] 195 | piano_start, (DS_WIDTH-(PIANOROLL_X+4))/PIANOROLL_CELLWIDTH, pattlen[cpatt]*(beats_per_measure*beatdiv)); | ^~~~~~~~~~~ @@ -1862,80 +1610,102 @@ pattern.c:218:9: warning: conversion from 'unsigned int' to 'float' may change value [-Wconversion] 218 | cip=pattlen[cpatt]*(beats_per_measure*beatdiv); // cells in pattern | ^~~~~~~ -patch.c: In function 'patch_mouse_hover': +filedialog.c:97:7: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 97 | fd->sliderpos, 12, fd->g.gl_pathc, + | ~~^~~~~~~~~~~ +filedialog.c:97:29: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'float' may change value [-Wconversion] + 97 | fd->sliderpos, 12, fd->g.gl_pathc, + | ~~~~~^~~~~~~~~ +filedialog.c:101:13: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] + 101 | while ( (ig.gl_pathc) && (i<(fd->sliderpos+12)) ) { + | ^ +filedialog.c:106:59: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 106 | glVertex2f( ((DS_WIDTH/2)-195), ((DS_HEIGHT/2)-88) + (i-fd->sliderpos)*13); + | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ +filedialog.c:107:63: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 107 | glVertex2f( ((DS_WIDTH/2)-195)+370, ((DS_HEIGHT/2)-88) + (i-fd->sliderpos)*13); + | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ +filedialog.c:108:85: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 108 | glVertex2f( ((DS_WIDTH/2)-195)+370, ((DS_HEIGHT/2)-88) + (i-fd->sliderpos)*13+13); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +filedialog.c:109:81: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 109 | glVertex2f( ((DS_WIDTH/2)-195), ((DS_HEIGHT/2)-88) + (i-fd->sliderpos)*13+13); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +filedialog.c:119:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 119 | (DS_HEIGHT/2)-78+(i-fd->sliderpos)*13, 2, 0xcfa0a0c0, 0); + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ +filedialog.c:122:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 122 | (DS_HEIGHT/2)-78+(i-fd->sliderpos)*13, 2, 0xcfa0a0c0, 2); + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ +filedialog.c:129:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 129 | (DS_HEIGHT/2)-78+(i-fd->sliderpos)*13, 2, fcol, 0); + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ +filedialog.c:129:51: warning: conversion from 'long unsigned int' to 'unsigned int' may change value [-Wconversion] + 129 | (DS_HEIGHT/2)-78+(i-fd->sliderpos)*13, 2, fcol, 0); + | ^~~~ +filedialog.c:136:56: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 136 | draw_button((DS_WIDTH/2)+192, (DS_HEIGHT/2)+100, 16, "OK", fd->hover[FDUI_OK]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +filedialog.c: In function 'filedialog_hover': +filedialog.c:143:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 143 | fd->hover[FDUI_FILENAME]=hovertest_box(x, y, (DS_WIDTH/2)+20, (DS_HEIGHT/2)+100, 16, 300); + | ^ +filedialog.c:143:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 143 | fd->hover[FDUI_FILENAME]=hovertest_box(x, y, (DS_WIDTH/2)+20, (DS_HEIGHT/2)+100, 16, 300); + | ^ +filedialog.c:144:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 144 | fd->hover[FDUI_OK]=hovertest_box(x, y, (DS_WIDTH/2)+192, (DS_HEIGHT/2)+100, 16, 16); + | ^ +filedialog.c:144:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 144 | fd->hover[FDUI_OK]=hovertest_box(x, y, (DS_WIDTH/2)+192, (DS_HEIGHT/2)+100, 16, 16); + | ^ +filedialog.c:145:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 145 | fd->hover[FDUI_VSLIDER]=hovertest_vslider(x, y, + | ^ +filedialog.c:145:48: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 145 | fd->hover[FDUI_VSLIDER]=hovertest_vslider(x, y, + | ^ +filedialog.c:147:7: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 147 | fd->sliderpos, 12, fd->g.gl_pathc); + | ~~^~~~~~~~~~~ +filedialog.c:147:29: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'float' may change value [-Wconversion] + 147 | fd->sliderpos, 12, fd->g.gl_pathc); + | ~~~~~^~~~~~~~~ +filedialog.c:150:21: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 150 | if (hovertest_box(x, y, (DS_WIDTH/2)-10, (DS_HEIGHT/2)-8, 160, 370)) { + | ^ +filedialog.c:150:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 150 | if (hovertest_box(x, y, (DS_WIDTH/2)-10, (DS_HEIGHT/2)-8, 160, 370)) { + | ^ +filedialog.c: In function 'filedialog_click': +filedialog.c:164:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 164 | if (state==GLUT_DOWN && !hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2), 244, 420)) { dialog_close(); return; } + | ^ +filedialog.c:164:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 164 | if (state==GLUT_DOWN && !hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2), 244, 420)) { dialog_close(); return; } + | ^ pattern.c:220:10: warning: conversion from 'int' to 'float' may change value [-Wconversion] 220 | f=((x-slide_drag_xofs)/(sbw-slw))*(cip-cos); | ^ -patch.c:130:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 130 | patch_ui[B_PREV]=hovertest_box(x, y, 310, DS_HEIGHT-14, 16, 16); - | ^ -patch.c:130:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 130 | patch_ui[B_PREV]=hovertest_box(x, y, 310, DS_HEIGHT-14, 16, 16); - | ^ pattern.c:221:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] 221 | piano_start=slide_drag_start+f; | ^ -patch.c:131:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 131 | patch_ui[B_NEXT]=hovertest_box(x, y, 362, DS_HEIGHT-14, 16, 16); - | ^ -patch.c:131:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 131 | patch_ui[B_NEXT]=hovertest_box(x, y, 362, DS_HEIGHT-14, 16, 16); - | ^ pattern.c:221:17: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] 221 | piano_start=slide_drag_start+f; | ^~~~~~~~~~~~~~~~ -patch.c:132:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 132 | patch_ui[B_PREVSYN]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); - | ^ -patch.c:132:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 132 | patch_ui[B_PREVSYN]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); - | ^ pattern.c:222:46: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] 222 | if (piano_start>(1+cip-cos)) piano_start=(1+cip-cos); | ^ -patch.c:133:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 133 | patch_ui[B_NEXTSYN]=hovertest_box(x, y, 230, DS_HEIGHT-14, 16, 16); - | ^ -patch.c:133:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 133 | patch_ui[B_NEXTSYN]=hovertest_box(x, y, 230, DS_HEIGHT-14, 16, 16); - | ^ -patch.c:135:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 135 | patch_ui[B_OCTDN]=hovertest_box(x, y, 17, 520-12, 16, 16); - | ^ pattern.c:228:7: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 228 | n=pattdata[cpatt][piano_start+piano_porta_drag]; // current note being dragged | ^~~~~~~~ -patch.c:135:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 135 | patch_ui[B_OCTDN]=hovertest_box(x, y, 17, 520-12, 16, 16); - | ^ -patch.c:136:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 136 | patch_ui[B_OCTUP]=hovertest_box(x, y, DS_WIDTH-17, 520-12, 16, 16); - | ^ -patch.c:136:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 136 | patch_ui[B_OCTUP]=hovertest_box(x, y, DS_WIDTH-17, 520-12, 16, 16); - | ^ -patch.c:139:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 139 | patch_ui[B_COPY]=hovertest_box(x, y, 622, DS_HEIGHT-14, 16, 16); - | ^ -patch.c:139:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 139 | patch_ui[B_COPY]=hovertest_box(x, y, 622, DS_HEIGHT-14, 16, 16); - | ^ -patch.c:140:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 140 | patch_ui[B_PASTE]=hovertest_box(x, y, 644, DS_HEIGHT-14, 16, 16); - | ^ -patch.c:140:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 140 | patch_ui[B_PASTE]=hovertest_box(x, y, 644, DS_HEIGHT-14, 16, 16); - | ^ pattern.c: In function 'pattern_mouse_click': pattern.c:254:41: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 254 | if (piano_hover>=0 && piano_note==(pattdata[cpatt][piano_start+piano_hover]&0xff)) { | ^~ -patch.c:145:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 145 | patch_ui[B_PATCHNAME]|=hovertest_box(x, y, 472, DS_HEIGHT-14, 16, 180); - | ^ -patch.c:145:43: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 145 | patch_ui[B_PATCHNAME]|=hovertest_box(x, y, 472, DS_HEIGHT-14, 16, 180); - | ^ pattern.c:272:24: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 272 | console_post("Click again to clear pattern"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -1946,113 +1716,24 @@ pattern.c:289:36: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 289 | for(i=((pattlen[cpatt]*(beats_per_measure*beatdiv))/2); i<(pattlen[cpatt]*(beats_per_measure*beatdiv)); i++) pattdata[cpatt][i]=0; | ^ -patch.c:174:7: warning: switch missing default case [-Wswitch-default] - 174 | switch (key) { - | ^~~~~~ pattern.c:289:20: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 289 | for(i=((pattlen[cpatt]*(beats_per_measure*beatdiv))/2); i<(pattlen[cpatt]*(beats_per_measure*beatdiv)); i++) pattdata[cpatt][i]=0; | ^ -patch.c: In function 'patch_mouse_drag': pattern.c:289:87: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 289 | for(i=((pattlen[cpatt]*(beats_per_measure*beatdiv))/2); i<(pattlen[cpatt]*(beats_per_measure*beatdiv)); i++) pattdata[cpatt][i]=0; | ^ -patch.c:201:27: warning: unused parameter 'x' [-Wunused-parameter] - 201 | void patch_mouse_drag(int x, int y) - | ~~~~^ -patch.c:201:34: warning: unused parameter 'y' [-Wunused-parameter] - 201 | void patch_mouse_drag(int x, int y) - | ~~~~^ pattern.c:289:71: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 289 | for(i=((pattlen[cpatt]*(beats_per_measure*beatdiv))/2); i<(pattlen[cpatt]*(beats_per_measure*beatdiv)); i++) pattdata[cpatt][i]=0; | ^ -patch.c: In function 'patch_mouse_click': pattern.c:295:31: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 295 | ( 1+pattlen[cpatt]*(beats_per_measure*beatdiv) - ( (DS_WIDTH-(PIANOROLL_X))/PIANOROLL_CELLWIDTH ) ) ) piano_start--; | ^ -patch.c:217:9: warning: this 'if' clause does not guard... [-Wmisleading-indentation] - 217 | if (cpatch[csynth]>0) cpatch[csynth]--; return; - | ^~ -patch.c:217:49: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' - 217 | if (cpatch[csynth]>0) cpatch[csynth]--; return; - | ^~~~~~ pattern.c:295:60: warning: conversion from 'unsigned int' to 'float' may change value [-Wconversion] 295 | ( 1+pattlen[cpatt]*(beats_per_measure*beatdiv) - ( (DS_WIDTH-(PIANOROLL_X))/PIANOROLL_CELLWIDTH ) ) ) piano_start--; | ^ pattern.c:308:40: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 308 | for(i=0; i<((pattlen[cpatt]*(beats_per_measure*beatdiv))/2); i++) pattdata[cpatt][i+((pattlen[cpatt]*(beats_per_measure*beatdiv))/2)]=pattdata[cpatt][i]; | ^ -patch.c:260:22: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 260 | console_post("Patch copied to clipboard"); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ -In file included from pattern.h:19, - from buffermm.h:17, - from synthesizer.h:25: -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -patch.c:273:24: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 273 | console_post("Patch pasted from clipboard"); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -patch.c:336:76: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 336 | patch_modulator_floatval=knob_float2scale(mod[csynth][mi].scale, modvalue[ csynth ][cpatch[csynth]][ mi ]); - | ~~~~~~~~~~~~~~~^~~~~~ -patch.c:341:42: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] - 341 | patch_modulator_intval=modvalue[ csynth ][cpatch[csynth]][ mi ]; - | ^~~~~~~~ -patch.c:334:15: warning: switch missing default case [-Wswitch-default] - 334 | switch(modModulatorTypes[mod[csynth][mi].type]) { - | ^~~~~~ -patch.c:344:27: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 344 | dialog_open(&patch_draw_modulator, &patch_modulator_hover, &patch_modulator_click); - | ^~~~~~~~~~~~~~~~~~~~~ -In file included from synthesizer.h:28: -dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~ -filedialog.c: In function 'filedialog_open': -patch.c:344:50: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 344 | dialog_open(&patch_draw_modulator, &patch_modulator_hover, &patch_modulator_click); - | ^~~~~~~~~~~~~~~~~~~~~~ -filedialog.c:24:3: warning: '__builtin___strncat_chk' specified bound 255 equals destination size [-Wstringop-truncation] - 24 | strncat((char*)&fd->fmask, ext, 255); - | ^ -dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ -patch.c:344:74: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 344 | dialog_open(&patch_draw_modulator, &patch_modulator_hover, &patch_modulator_click); - | ^~~~~~~~~~~~~~~~~~~~~~ -dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ -patch.c:345:35: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] - 345 | dialog_bindkeyboard(&patch_modulator_keyboard); - | ^~~~~~~~~~~~~~~~~~~~~~~~~ -dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' - 23 | void dialog_bindkeyboard(void *kbfunc); - | ~~~~~~^~~~~~ -patch.c:346:34: warning: ISO C forbids passing argument 1 of 'dialog_bindspecial' between function pointer and 'void *' [-Wpedantic] - 346 | dialog_bindspecial(&patch_modulator_special); - | ^~~~~~~~~~~~~~~~~~~~~~~~ -dialog.h:24:31: note: expected 'void *' but argument is of type 'void (*)(int, int, int)' - 24 | void dialog_bindspecial(void *specialfunc); - | ~~~~~~^~~~~~~~~~~ -patch.c:351:24: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 351 | console_post("No settings for this module!"); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -patch.c: In function 'patch_keyboard': -patch.c:378:3: warning: switch missing default case [-Wswitch-default] - 378 | switch (key) { - | ^~~~~~ -patch.c:367:44: warning: unused parameter 'x' [-Wunused-parameter] - 367 | void patch_keyboard(unsigned char key, int x, int y) - | ~~~~^ pattern.c:308:23: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 308 | for(i=0; i<((pattlen[cpatt]*(beats_per_measure*beatdiv))/2); i++) pattdata[cpatt][i+((pattlen[cpatt]*(beats_per_measure*beatdiv))/2)]=pattdata[cpatt][i]; | ^ @@ -2071,194 +1752,102 @@ pattern.c:329:42: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 329 | patt_clipboard_len=pattlen[cpatt]*(beats_per_measure*beatdiv); | ^ +filedialog.c:160:7: warning: variable 'r' set but not used [-Wunused-but-set-variable] + 160 | int r; + | ^ pattern.c:330:22: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 330 | console_post("Current pattern copied to clipboard"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ console.h:23:25: note: expected 'char *' but argument is of type 'const char *' 23 | void console_post(char *msg); | ~~~~~~^~~ +filedialog.c: In function 'filedialog_keyboard': pattern.c:334:19: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 334 | for(i=0; ifname, key, 45); + | ^~~ pattern.c:340:23: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 340 | if (piano_note==(pattdata[cpatt][piano_start+piano_hover]&0xff)) { | ^~ +filedialog.c:259:27: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion] + 259 | textbox_edit(fd->fname, key, 45); + | ^~~ pattern.c:352:52: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 352 | pattdata[cpatt][piano_start+piano_hover]=piano_note; | ^~~~~~~~~~ +filedialog.c: In function 'filedialog_drag': pattern.c:364:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] 364 | slide_drag_xofs=x; | ^ +filedialog.c:271:9: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'float' may change value [-Wconversion] + 271 | cip=fd->g.gl_pathc; // files total + | ^~ +filedialog.c:273:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 273 | f= ( (cip-cos) * (y - fd->slider_yofs) ) / (sbh-slh) ; + | ^ +filedialog.c:274:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 274 | fd->sliderpos=fd->slider_dragstart+f; + | ^ pattern.c:243:60: warning: unused parameter 'y' [-Wunused-parameter] 243 | void pattern_mouse_click(int button, int state, int x, int y) | ~~~~^ +filedialog.c:274:19: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] + 274 | fd->sliderpos=fd->slider_dragstart+f; + | ^~ +filedialog.c:275:48: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] + 275 | if (fd->sliderpos>(cip-cos)) fd->sliderpos=(cip-cos); + | ^ pattern.c: In function 'pattern_keyboard': pattern.c:421:27: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 421 | ( 1+pattlen[cpatt]*(beats_per_measure*beatdiv) - ( (DS_WIDTH-(PIANOROLL_X))/PIANOROLL_CELLWIDTH ) ) ) piano_start--; | ^ +filedialog.c:263:42: warning: unused parameter 'x' [-Wunused-parameter] + 263 | void filedialog_drag(filedialog *fd, int x, int y) + | ~~~~^ pattern.c:421:56: warning: conversion from 'unsigned int' to 'float' may change value [-Wconversion] 421 | ( 1+pattlen[cpatt]*(beats_per_measure*beatdiv) - ( (DS_WIDTH-(PIANOROLL_X))/PIANOROLL_CELLWIDTH ) ) ) piano_start--; | ^ -patch.c:367:51: warning: unused parameter 'y' [-Wunused-parameter] - 367 | void patch_keyboard(unsigned char key, int x, int y) - | ~~~~^ -patch.c: In function 'patch_keyboardup': pattern.c:416:3: warning: switch missing default case [-Wswitch-default] 416 | switch (key) { | ^~~~~~ -patch.c:401:46: warning: unused parameter 'x' [-Wunused-parameter] - 401 | void patch_keyboardup(unsigned char key, int x, int y) - | ~~~~^ -patch.c:401:53: warning: unused parameter 'y' [-Wunused-parameter] - 401 | void patch_keyboardup(unsigned char key, int x, int y) - | ~~~~^ -In file included from /usr/include/string.h:535, - from /usr/include/freetype2/freetype/config/ftstdlib.h:88, - from /usr/include/freetype2/freetype/config/ftconfig.h:41, - from /usr/include/freetype2/freetype/freetype.h:24, - from font.h:18, - from widgets.h:22: -In function 'strncat', - inlined from 'filedialog_open' at filedialog.c:24:3: pattern.c:412:46: warning: unused parameter 'x' [-Wunused-parameter] 412 | void pattern_keyboard(unsigned char key, int x, int y) | ~~~~^ -/usr/include/x86_64-linux-gnu/bits/string_fortified.h:138:10: warning: '__builtin___strncat_chk' specified bound 255 equals destination size [-Wstringop-overflow=] - 138 | return __builtin___strncat_chk (__dest, __src, __len, - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 139 | __glibc_objsize (__dest)); - | ~~~~~~~~~~~~~~~~~~~~~~~~~ -patch.c: In function 'patch_specialkey': pattern.c:412:53: warning: unused parameter 'y' [-Wunused-parameter] 412 | void pattern_keyboard(unsigned char key, int x, int y) | ~~~~^ -patch.c:419:3: warning: switch missing default case [-Wswitch-default] - 419 | switch(key) - | ^~~~~~ -patch.c:417:46: warning: unused parameter 'x' [-Wunused-parameter] - 417 | void patch_specialkey(unsigned char key, int x, int y) - | ~~~~^ pattern.c: In function 'pattern_specialkey': -patch.c:417:53: warning: unused parameter 'y' [-Wunused-parameter] - 417 | void patch_specialkey(unsigned char key, int x, int y) - | ~~~~^ pattern.c:455:3: warning: switch missing default case [-Wswitch-default] 455 | switch(key) | ^~~~~~ pattern.c:453:48: warning: unused parameter 'x' [-Wunused-parameter] 453 | void pattern_specialkey(unsigned char key, int x, int y) | ~~~~^ -patch.c: In function 'patch_draw': pattern.c:453:55: warning: unused parameter 'y' [-Wunused-parameter] 453 | void pattern_specialkey(unsigned char key, int x, int y) | ~~~~^ -patch.c:460:19: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 460 | glVertex2f(x+16, 8+m*16-yd); - | ~^~~ pattern.c: In function 'pattern_keyboardup': -patch.c:460:31: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 460 | glVertex2f(x+16, 8+m*16-yd); - | ~~~~~~^~~ pattern.c:485:48: warning: unused parameter 'x' [-Wunused-parameter] 485 | void pattern_keyboardup(unsigned char key, int x, int y) | ~~~~^ -patch.c:461:19: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 461 | glVertex2f(x+380, 8+m*16-yd); - | ~^~~~ pattern.c:485:55: warning: unused parameter 'y' [-Wunused-parameter] 485 | void pattern_keyboardup(unsigned char key, int x, int y) | ~~~~^ -patch.c:461:31: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 461 | glVertex2f(x+380, 8+m*16-yd); - | ~~~~~~^~~ -patch.c:462:19: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 462 | glVertex2f(x+380, 24+m*16-yd); - | ~^~~~ pattern.c: In function 'pattern_draw': -patch.c:462:32: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 462 | glVertex2f(x+380, 24+m*16-yd); - | ~~~~~~~^~~ pattern.c:517:49: warning: conversion from 'int' to 'float' may change value [-Wconversion] 517 | if ((coct+i)<10)draw_kboct(round(PIANOROLL_Y-(12*PIANOROLL_CELLHEIGHT*i)), 40, 12, coct+i, piano_note, rkdown); | ^ -patch.c:463:19: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 463 | glVertex2f(x+16, 24+m*16-yd); - | ~^~~ -patch.c:463:32: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] - 463 | glVertex2f(x+16, 24+m*16-yd); - | ~~~~~~~^~~ pattern.c:517:32: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 517 | if ((coct+i)<10)draw_kboct(round(PIANOROLL_Y-(12*PIANOROLL_CELLHEIGHT*i)), 40, 12, coct+i, piano_note, rkdown); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -patch.c:467:51: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 467 | sprintf(tmps, "%02d", mi); render_text(tmps, x+20, 20+mm*16-yd, 2, 0xff505050, 0); - | ~^~~ -patch.c:467:64: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 467 | sprintf(tmps, "%02d", mi); render_text(tmps, x+20, 20+mm*16-yd, 2, 0xff505050, 0); - | ~~~~~~~~^~~ pattern.c:529:95: warning: conversion from 'int' to 'float' may change value [-Wconversion] 529 | glVertex2f(PIANOROLL_X, PIANOROLL_Y-(j*PIANOROLL_CELLHEIGHT)); | ^ -patch.c:468:81: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 468 | sprintf(tmps, "%s", modTypeNames[mod[csynth][mi].type]); render_text(tmps, x+44, 20+mm*16-yd, 2, 0xffc0c0c0, 0); - | ~^~~ -patch.c:468:94: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 468 | sprintf(tmps, "%s", modTypeNames[mod[csynth][mi].type]); render_text(tmps, x+44, 20+mm*16-yd, 2, 0xffc0c0c0, 0); - | ~~~~~~~~^~~ pattern.c:530:46: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 530 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(j*PIANOROLL_CELLHEIGHT)); | ^ -In file included from synthesizer.h:29, - from buffermm.h:18: -dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 16 | int dotfile_load(); - | ^~~ -dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 17 | int dotfile_save(); - | ^~~ -patch.c:476:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 476 | render_text(tmps, x+110, 20+mm*16-yd, 2, 0xff808080, 0); - | ~^~~~ -patch.c:476:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 476 | render_text(tmps, x+110, 20+mm*16-yd, 2, 0xff808080, 0); - | ~~~~~~~~^~~ -patch.c:483:45: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 483 | f=knob_float2scale(mod[csynth][mi].scale, modvalue[ csynth ][ cpatch[csynth] ][ mi ]); - | ~~~~~~~~~~~~~~~^~~~~~ -patch.c:478:5: warning: switch missing default case [-Wswitch-default] - 478 | switch(modModulatorTypes[mod[csynth][mi].type]) - | ^~~~~~ -patch.c:496:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 496 | render_text(tmps, x+250, 20+mm*16-yd, 2, 0xffc0c0c0, 0); - | ~^~~~ -patch.c:496:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 496 | render_text(tmps, x+250, 20+mm*16-yd, 2, 0xffc0c0c0, 0); - | ~~~~~~~~^~~ -patch.c:506:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 506 | draw_kbhoct(PIANO_LEFT+m*16*7, PIANO_TOP, 16, 70, m, cpkey, rkdown, &pianokeys[(m-coct)*12]); - | ^ -patch.c:508:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 508 | draw_kbhoct(PIANO_LEFT+m*16*7, PIANO_TOP, 16, 70, m, cpkey, rkdown, NULL); - | ^ -patch.c:513:31: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 513 | draw_button(17, 520-12, 16, "-", patch_ui[B_OCTDN]); - | ^~~ -In file included from pattern.h:22: -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -patch.c:514:40: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 514 | draw_button(DS_WIDTH-17, 520-12, 16, "+", patch_ui[B_OCTUP]); - | ^~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -patch.c:519:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 519 | draw_button(622, DS_HEIGHT-14, 16, "C", patch_ui[B_COPY]); - | ^~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ pattern.c:530:74: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 530 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(j*PIANOROLL_CELLHEIGHT)); | ^ @@ -2298,98 +1887,6 @@ pattern.c:541:117: warning: conversion from 'int' to 'float' may change value [-Wconversion] 541 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(j*PIANOROLL_CELLHEIGHT)); | ^ -In file included from widgets.h:23, - from dialog.h:16, - from about.h:17, - from main.c:28: -modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 152 | void calc_supersaw_tables(); - | ^~~~ -synthesizer.h:84:6: warning: redundant redeclaration of 'synth_stackify' [-Wredundant-decls] - 84 | void synth_stackify(int syn); - | ^~~~~~~~~~~~~~ -In file included from synthesizer.h:31: -fileops.h:62:6: note: previous declaration of 'synth_stackify' with type 'void(int)' - 62 | void synth_stackify(int syn); - | ^~~~~~~~~~~~~~ -synthesizer.h:85:5: warning: redundant redeclaration of 'synth_trace' [-Wredundant-decls] - 85 | int synth_trace(int syn, int pm, int fifo); - | ^~~~~~~~~~~ -patch.c:520:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 520 | draw_button(644, DS_HEIGHT-14, 16, "V", patch_ui[B_PASTE]); - | ^~~ -fileops.h:63:5: note: previous declaration of 'synth_trace' with type 'int(int, int, int)' - 63 | int synth_trace(int syn, int pm, int top); - | ^~~~~~~~~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -patch.c:529:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 529 | draw_button(310, DS_HEIGHT-14, 16, "<<", patch_ui[B_PREV]); - | ^~~~ -In file included from modules.c:22: -sequencer.h:33:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 33 | void sequencer_init(); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -In file included from main.c:29: -audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 56 | int audio_exportwav(); //char *filename); - | ^~~ -patch.c:532:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 532 | draw_button(362, DS_HEIGHT-14, 16, ">>", patch_ui[B_NEXT]); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -sequencer.h:80:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 80 | void sequencer_bpm_close_dialog(); - | ^~~~ -patch.c:534:37: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 534 | draw_button(14, DS_HEIGHT-14, 16, "<<", patch_ui[B_PREVSYN]); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -modules.c:33:35: warning: signed conversion from 'unsigned int' to 'int' changes value from '4023233417' to '-271733879' [-Wsign-conversion] - 33 | int noise_x1=0x67452301, noise_x2=0xefcdab89; - | ^~~~~~~~~~ -patch.c:537:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 537 | draw_button(230, DS_HEIGHT-14, 16, ">>", patch_ui[B_NEXTSYN]); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -patch.c: In function 'patch_draw_modulator': -patch.c:558:55: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 558 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 120, 226, "", 0); - | ^~ -widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' - 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); - | ~~~~~~^~~~~ -In file included from synthesizer.h:29, - from buffermm.h:18, - from main.c:30: -dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 16 | int dotfile_load(); - | ^~~ -dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 17 | int dotfile_save(); - | ^~~ -patch.c:568:53: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 568 | draw_button((DS_WIDTH/2)+96, (DS_HEIGHT/2)+2, 16, "+", modulator_ui[B_MOD_ADDPREC]); - | ^~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -patch.c:569:53: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 569 | draw_button((DS_WIDTH/2)-28, (DS_HEIGHT/2)+2, 16, "-", modulator_ui[B_MOD_DECPREC]); - | ^~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ pattern.c:46:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] 46 | #define PIANOROLL_OCTAVES 6 | ^ @@ -2402,14 +1899,6 @@ pattern.c:553:26: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 553 | for(i=0,j=piano_start;j<(pattlen[cpatt]*(beats_per_measure*beatdiv)+1);i++,j++) { | ^ -In file included from synthesizer.h:29, - from buffermm.h:18: -dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 16 | int dotfile_load(); - | ^~~ -dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 17 | int dotfile_save(); - | ^~~ pattern.c:560:38: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 560 | if ((j%b)==0 && j<(pattlen[cpatt]*b)) { | ^ @@ -2437,15 +1926,216 @@ pattern.c:578:63: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 578 | if ( (ticks>>6)>=piano_start && (ticks>>6)<(pattlen[cpatt]*(beats_per_measure*beatdiv)) ) // TODO: test if pos > pianostart+rollwidth | ^ -patch.c:574:42: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 574 | rf=knob_scale2float(mod[csynth][mi].scale, rf); - | ~~~~~~~~~~~~~~~^~~~~~ pattern.c:581:9: warning: conversion from 'long int' to 'int' may change value [-Wconversion] 581 | i=(ticks>>6)-piano_start; | ^ -patch.c:575:11: warning: assignment to 'unsigned int *' from incompatible pointer type 'long unsigned int *' [-Wincompatible-pointer-types] - 575 | fptr=(unsigned long*)(&rf); - | ^ +pattern.c:584:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 584 | glVertex2f(PIANOROLL_X+i*PIANOROLL_CELLWIDTH, round(PIANOROLL_Y+PIANOROLL_CELLHEIGHT)); + | ^ +pattern.c:585:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 585 | glVertex2f(PIANOROLL_X+i*PIANOROLL_CELLWIDTH, round(PIANOROLL_Y-((PIANOROLL_OCTAVES*12)*PIANOROLL_CELLHEIGHT))); + | ^ +pattern.c:591:42: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 591 | for(i=0,j=piano_start;j<(pattlen[cpatt]*(beats_per_measure*beatdiv));i++,j++) { + | ^ +pattern.c:591:26: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] + 591 | for(i=0,j=piano_start;j<(pattlen[cpatt]*(beats_per_measure*beatdiv));i++,j++) { + | ^ +pattern.c:37:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 37 | #define PIANOROLL_X KB_WIDTH+5.5 + | ^ +pattern.c:599:24: note: in expansion of macro 'PIANOROLL_X' + 599 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^~~~~~~~~~~ +pattern.c:599:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 599 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:599:72: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 599 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:600:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 600 | glVertex2f(PIANOROLL_X+(i+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:600:74: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 600 | glVertex2f(PIANOROLL_X+(i+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:601:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 601 | glVertex2f(PIANOROLL_X+(i+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:601:72: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 601 | glVertex2f(PIANOROLL_X+(i+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:37:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 37 | #define PIANOROLL_X KB_WIDTH+5.5 + | ^ +pattern.c:602:24: note: in expansion of macro 'PIANOROLL_X' + 602 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^~~~~~~~~~~ +pattern.c:602:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 602 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:602:70: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 602 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:37:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 37 | #define PIANOROLL_X KB_WIDTH+5.5 + | ^ +pattern.c:607:15: note: in expansion of macro 'PIANOROLL_X' + 607 | l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH+1, + | ^~~~~~~~~~~ +pattern.c:607:26: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 607 | l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH+1, + | ^ +pattern.c:608:26: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 608 | PIANOROLL_Y-2-(n-coct*12+1)*PIANOROLL_CELLHEIGHT, + | ^ +pattern.c:37:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 37 | #define PIANOROLL_X KB_WIDTH+5.5 + | ^ +pattern.c:611:15: note: in expansion of macro 'PIANOROLL_X' + 611 | l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, + | ^~~~~~~~~~~ +pattern.c:611:26: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 611 | l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, + | ^ +pattern.c:612:26: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 612 | PIANOROLL_Y-2-(n-coct*12+1)*PIANOROLL_CELLHEIGHT, + | ^ +pattern.c:634:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 634 | glVertex2f(1+PIANOROLL_X+j*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:634:68: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 634 | glVertex2f(1+PIANOROLL_X+j*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:635:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 635 | glVertex2f(PIANOROLL_X+(j+l)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:635:70: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 635 | glVertex2f(PIANOROLL_X+(j+l)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:636:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 636 | glVertex2f(PIANOROLL_X+(j+l)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:636:68: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 636 | glVertex2f(PIANOROLL_X+(j+l)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:637:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 637 | glVertex2f(1+PIANOROLL_X+j*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:637:66: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 637 | glVertex2f(1+PIANOROLL_X+j*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:645:7: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 645 | n=pattdata[cpatt][piano_start+piano_porta_drag]; + | ^~~~~~~~ +pattern.c:648:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 648 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:648:81: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 648 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:649:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 649 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:649:102: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 649 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:650:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 650 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +In file included from synthesizer.h:29, + from buffermm.h:18: +dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 16 | int dotfile_load(); + | ^~~ +dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 17 | int dotfile_save(); + | ^~~ +pattern.c:650:100: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 650 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:651:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 651 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:651:79: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 651 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:653:31: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] + 653 | if (piano_porta_drag_from != pattdata[cpatt][piano_start+piano_porta_drag]) { + | ^~ +pattern.c:657:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 657 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:657:83: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 657 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +font.c:61:14: warning: no previous prototype for 'tpow2' [-Wmissing-prototypes] + 61 | unsigned int tpow2(unsigned int x) + | ^~~~~ +pattern.c:658:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 658 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:658:104: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 658 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:659:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 659 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +font.c: In function 'font_init': +font.c:92:50: warning: conversion to 'FT_UInt' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] + 92 | err=FT_Set_Pixel_Sizes(font[i], 0, fontsize[i]); + | ~~~~~~~~^~~ +font.c:108:35: warning: conversion to 'FT_ULong' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] + 108 | err=FT_Load_Char(font[f], rc, FT_LOAD_RENDER); + | ^~ +pattern.c:659:102: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 659 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +font.c:115:28: warning: conversion from 'FT_Pos' {aka 'long int'} to 'int' may change value [-Wconversion] + 115 | font_advance[f][c]=slot->advance.x >> 6; + | ^~~~ +font.c:118:26: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 118 | font_width[f][c]=slot->bitmap.width; + | ^~~~ +pattern.c:660:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 660 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +font.c:119:27: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 119 | font_height[f][c]=slot->bitmap.rows; + | ^~~~ +font.c:120:14: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 120 | texw=tpow2(slot->bitmap.width); + | ^~~~~ +font.c:121:14: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 121 | texh=tpow2(slot->bitmap.rows); + | ^~~~~ +pattern.c:660:81: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 660 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +font.c:126:38: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] + 126 | font_bitmap[f][c]=calloc(texw*texh, sizeof(GLuint)); + | ~~~~^~~~~ +font.c:127:19: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] + 127 | for (j=0;jbitmap.rows;j++) + | ^ +font.c:129:20: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] + 129 | for(i=0;ibitmap.width;i++) { + | ^ +pattern.c:667:7: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 667 | n=pattdata[cpatt][piano_start+piano_drag]; + | ^~~~~~~~ +font.c:131:51: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 131 | font_bitmap[f][c][ ( slot->bitmap.rows-(j+1) )*texw + i] = p; + | ^ +font.c:131:59: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 131 | font_bitmap[f][c][ ( slot->bitmap.rows-(j+1) )*texw + i] = p; + | ^ +font.c:131:65: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 131 | font_bitmap[f][c][ ( slot->bitmap.rows-(j+1) )*texw + i] = p; + | ^ +pattern.c:670:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 670 | glVertex2f(1+PIANOROLL_X+piano_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ synthesizer.h:84:6: warning: redundant redeclaration of 'synth_stackify' [-Wredundant-decls] 84 | void synth_stackify(int syn); | ^~~~~~~~~~~~~~ @@ -2459,383 +2149,206 @@ fileops.h:63:5: note: previous declaration of 'synth_trace' with type 'int(int, int, int)' 63 | int synth_trace(int syn, int pm, int top); | ^~~~~~~~~~~ -patch.c:579:41: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 579 | f=knob_float2scale(mod[csynth][mi].scale, rf); - | ~~~~~~~~~~~~~~~^~~~~~ -pattern.c:584:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 584 | glVertex2f(PIANOROLL_X+i*PIANOROLL_CELLWIDTH, round(PIANOROLL_Y+PIANOROLL_CELLHEIGHT)); - | ^ +In file included from modules.c:22: +sequencer.h:33:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 33 | void sequencer_init(); + | ^~~~ +sequencer.h:80:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 80 | void sequencer_bpm_close_dialog(); + | ^~~~ +modules.c:33:35: warning: signed conversion from 'unsigned int' to 'int' changes value from '4023233417' to '-271733879' [-Wsign-conversion] + 33 | int noise_x1=0x67452301, noise_x2=0xefcdab89; + | ^~~~~~~~~~ +font.c: In function 'render_text': +font.c:165:7: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 165 | sw+=font_advance[fontnr][(int)text[n]]; + | ^~ +font.c:171:19: warning: conversion from 'long unsigned int' to 'float' may change value [-Wconversion] + 171 | if (align==1) xp-=(sw/2); + | ^~ +font.c:172:19: warning: conversion from 'long unsigned int' to 'float' may change value [-Wconversion] + 172 | if (align==2) xp-=sw; + | ^~ +font.c:176:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 176 | if ((int)text[n]=='\n') { yp+=fontsize[fontnr]+2; xp=x; n++; continue; } + | ^~ +font.c:178:68: warning: conversion from 'unsigned int' to 'GLubyte' {aka 'unsigned char'} may change value [-Wconversion] + 178 | glColor4ub((color>>16)&0xff, (color>>8)&0xff, color&0xff, color>>24); + | ~~~~~^~~~ +font.c:182:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 182 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]], yp+font_yoffset[fontnr][(int)text[n]]); + | ^ +font.c:182:59: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 182 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]], yp+font_yoffset[fontnr][(int)text[n]]); + | ^ +font.c:184:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 184 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]]+font_width[fontnr][(int)text[n]], yp+font_yoffset[fontnr][(int)text[n]]); + | ^ +font.c:184:55: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 184 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]]+font_width[fontnr][(int)text[n]], yp+font_yoffset[fontnr][(int)text[n]]); + | ^ +font.c:184:92: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 184 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]]+font_width[fontnr][(int)text[n]], yp+font_yoffset[fontnr][(int)text[n]]); + | ^ +font.c:186:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 186 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]]+font_width[fontnr][(int)text[n]], + | ^ +font.c:186:55: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 186 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]]+font_width[fontnr][(int)text[n]], + | ^ +font.c:187:18: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 187 | yp+font_yoffset[fontnr][(int)text[n]]+font_height[fontnr][(int)text[n]]); + | ^ +font.c:187:53: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 187 | yp+font_yoffset[fontnr][(int)text[n]]+font_height[fontnr][(int)text[n]]); + | ^ +font.c:189:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 189 | glVertex2f(xp+font_xoffset[fontnr][(int)text[n]], + | ^ +font.c:190:18: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 190 | yp+font_yoffset[fontnr][(int)text[n]]+font_height[fontnr][(int)text[n]]); + | ^ +font.c:190:53: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 190 | yp+font_yoffset[fontnr][(int)text[n]]+font_height[fontnr][(int)text[n]]); + | ^ +font.c:194:7: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 194 | xp+=font_advance[fontnr][(int)text[n]]; + | ^~ modules.c:311:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 311 | char* modVcoWaveforms[VCO_WAVEFORMS]={"Pulse", "Saw", "Triangle", "Sine"}; //, "Noise"}; | ^~~~~~~ modules.c:311:49: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 311 | char* modVcoWaveforms[VCO_WAVEFORMS]={"Pulse", "Saw", "Triangle", "Sine"}; //, "Noise"}; | ^~~~~ -pattern.c:585:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 585 | glVertex2f(PIANOROLL_X+i*PIANOROLL_CELLWIDTH, round(PIANOROLL_Y-((PIANOROLL_OCTAVES*12)*PIANOROLL_CELLHEIGHT))); - | ^ -sequencer.h:33:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 33 | void sequencer_init(); - | ^~~~ -patch.c: In function 'patch_modulator_hover': modules.c:311:56: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 311 | char* modVcoWaveforms[VCO_WAVEFORMS]={"Pulse", "Saw", "Triangle", "Sine"}; //, "Noise"}; | ^~~~~~~~~~ modules.c:311:68: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 311 | char* modVcoWaveforms[VCO_WAVEFORMS]={"Pulse", "Saw", "Triangle", "Sine"}; //, "Noise"}; | ^~~~~~ -patch.c:596:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 596 | modulator_ui[B_MOD_ADDPREC]=hovertest_box(x, y, (DS_WIDTH/2)+96, (DS_HEIGHT/2)+2, 16, 16); - | ^ -pattern.c:591:42: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 591 | for(i=0,j=piano_start;j<(pattlen[cpatt]*(beats_per_measure*beatdiv));i++,j++) { - | ^ modules.c:312:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 312 | char* modLfoWaveforms[LFO_WAVEFORMS]={"Square", "Saw", "Triangle", "Sine"}; | ^~~~~~~~ -patch.c:596:48: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 596 | modulator_ui[B_MOD_ADDPREC]=hovertest_box(x, y, (DS_WIDTH/2)+96, (DS_HEIGHT/2)+2, 16, 16); - | ^ -sequencer.h:80:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 80 | void sequencer_bpm_close_dialog(); - | ^~~~ modules.c:312:50: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 312 | char* modLfoWaveforms[LFO_WAVEFORMS]={"Square", "Saw", "Triangle", "Sine"}; | ^~~~~ -pattern.c:591:26: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] - 591 | for(i=0,j=piano_start;j<(pattlen[cpatt]*(beats_per_measure*beatdiv));i++,j++) { - | ^ +pattern.c:670:75: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 670 | glVertex2f(1+PIANOROLL_X+piano_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:671:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 671 | glVertex2f(PIANOROLL_X+(piano_dragto+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:671:79: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 671 | glVertex2f(PIANOROLL_X+(piano_dragto+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:672:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 672 | glVertex2f(PIANOROLL_X+(piano_dragto+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:672:77: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 672 | glVertex2f(PIANOROLL_X+(piano_dragto+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:673:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 673 | glVertex2f(1+PIANOROLL_X+piano_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:673:73: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 673 | glVertex2f(1+PIANOROLL_X+piano_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:683:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 683 | PIANOROLL_Y-1-(kpkeydown-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:685:49: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 685 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, + | ^ +pattern.c:685:77: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 685 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, + | ^ +pattern.c:685:33: warning: conversion from 'unsigned int' to 'float' may change value [-Wconversion] + 685 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, + | ^ +pattern.c:686:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 686 | PIANOROLL_Y-1-(kpkeydown-coct*12)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:688:49: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 688 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, + | ^ +pattern.c:688:77: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 688 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, + | ^ +pattern.c:688:33: warning: conversion from 'unsigned int' to 'float' may change value [-Wconversion] + 688 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, + | ^ +pattern.c:689:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 689 | PIANOROLL_Y-(kpkeydown-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:692:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 692 | PIANOROLL_Y-(kpkeydown-coct*12+1)*PIANOROLL_CELLHEIGHT); + | ^ +pattern.c:700:18: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 700 | pattlen[cpatt]*(beats_per_measure*beatdiv), + | ^ +pattern.c:699:4: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 699 | piano_start, (DS_WIDTH-(PIANOROLL_X+4))/PIANOROLL_CELLWIDTH, + | ^~~~~~~~~~~ +pattern.c:700:18: warning: conversion from 'unsigned int' to 'float' may change value [-Wconversion] + 700 | pattlen[cpatt]*(beats_per_measure*beatdiv), + | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ +pattern.c:704:37: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 704 | draw_button(14, DS_HEIGHT-14, 16, "<<", patt_ui[B_PREV]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ modules.c:312:57: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 312 | char* modLfoWaveforms[LFO_WAVEFORMS]={"Square", "Saw", "Triangle", "Sine"}; | ^~~~~~~~~~ -patch.c:597:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 597 | modulator_ui[B_MOD_DECPREC]=hovertest_box(x, y, (DS_WIDTH/2)-28, (DS_HEIGHT/2)+2 , 16, 16); - | ^ modules.c:312:69: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 312 | char* modLfoWaveforms[LFO_WAVEFORMS]={"Square", "Saw", "Triangle", "Sine"}; | ^~~~~~ -patch.c:597:48: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 597 | modulator_ui[B_MOD_DECPREC]=hovertest_box(x, y, (DS_WIDTH/2)-28, (DS_HEIGHT/2)+2 , 16, 16); - | ^ modules.c:313:32: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 313 | char* modVcfModes[VCF_MODES]={"Off", "Lowpass", "Highpass", "Bandpass"}; | ^~~~~ -pattern.c:37:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 37 | #define PIANOROLL_X KB_WIDTH+5.5 - | ^ -pattern.c:599:24: note: in expansion of macro 'PIANOROLL_X' - 599 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^~~~~~~~~~~ modules.c:313:39: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 313 | char* modVcfModes[VCF_MODES]={"Off", "Lowpass", "Highpass", "Bandpass"}; | ^~~~~~~~~ -patch.c:600:44: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 600 | modulator_ui[B_MOD_VALUE]|=hovertest_box(x, y, (DS_WIDTH/2)+34, (DS_HEIGHT/2)-20, 16, 140); - | ^ modules.c:313:50: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 313 | char* modVcfModes[VCF_MODES]={"Off", "Lowpass", "Highpass", "Bandpass"}; | ^~~~~~~~~~ -pattern.c:599:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 599 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -patch.c:600:47: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 600 | modulator_ui[B_MOD_VALUE]|=hovertest_box(x, y, (DS_WIDTH/2)+34, (DS_HEIGHT/2)-20, 16, 140); - | ^ modules.c:313:62: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 313 | char* modVcfModes[VCF_MODES]={"Off", "Lowpass", "Highpass", "Bandpass"}; | ^~~~~~~~~~ -sequencer.c:171:6: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 171 | void sequencer_init() - | ^~~~~~~~~~~~~~ -sequencer.c: In function 'sequencer_init': -sequencer.c:171:6: warning: old-style function definition [-Wold-style-definition] -synthesizer.h:84:6: warning: redundant redeclaration of 'synth_stackify' [-Wredundant-decls] - 84 | void synth_stackify(int syn); - | ^~~~~~~~~~~~~~ -pattern.c:599:72: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 599 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -patch.c: In function 'patch_modulator_click': modules.c:314:36: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 314 | char* modDelayModes[DELAY_MODES]={"Comb filter", "Allpass filter"}; | ^~~~~~~~~~~~~ -In file included from synthesizer.h:31: -fileops.h:62:6: note: previous declaration of 'synth_stackify' with type 'void(int)' - 62 | void synth_stackify(int syn); - | ^~~~~~~~~~~~~~ -synthesizer.h:85:5: warning: redundant redeclaration of 'synth_trace' [-Wredundant-decls] - 85 | int synth_trace(int syn, int pm, int fifo); - | ^~~~~~~~~~~ -fileops.h:63:5: note: previous declaration of 'synth_trace' with type 'int(int, int, int)' - 63 | int synth_trace(int syn, int pm, int top); - | ^~~~~~~~~~~ modules.c:314:51: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 314 | char* modDelayModes[DELAY_MODES]={"Comb filter", "Allpass filter"}; | ^~~~~~~~~~~~~~~~ -patch.c:609:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 609 | if (state==GLUT_DOWN && !hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),120,226 )) { - | ^ -pattern.c:600:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 600 | glVertex2f(PIANOROLL_X+(i+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ modules.c:315:34: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 315 | char* modSlewModes[SLEW_MODES]={"Linear", "Logarithmic"}; | ^~~~~~~~ -patch.c:609:44: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 609 | if (state==GLUT_DOWN && !hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),120,226 )) { - | ^ modules.c:315:44: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 315 | char* modSlewModes[SLEW_MODES]={"Linear", "Logarithmic"}; | ^~~~~~~~~~~~~ -sequencer.c: At top level: -sequencer.c:240:6: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 240 | void sequencer_toggleplayback() { - | ^~~~~~~~~~~~~~~~~~~~~~~~ -pattern.c:600:74: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 600 | glVertex2f(PIANOROLL_X+(i+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -sequencer.c: In function 'sequencer_toggleplayback': -sequencer.c:240:6: warning: old-style function definition [-Wold-style-definition] -patch.c:616:50: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 616 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),120,226 )) { - | ^ -In file included from main.c:40: -sequencer.h:33:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 33 | void sequencer_init(); - | ^~~~ -sequencer.c: In function 'sequencer_ispattern': -pattern.c:601:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 601 | glVertex2f(PIANOROLL_X+(i+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -sequencer.c:265:69: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 265 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { - | ^ -patch.c:616:52: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 616 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),120,226 )) { - | ^ -sequencer.c:265:41: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 265 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { - | ^ -sequencer.h:80:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 80 | void sequencer_bpm_close_dialog(); - | ^~~~ -main.c:79:6: warning: no previous prototype for 'mouse_hoverfunc' [-Wmissing-prototypes] - 79 | void mouse_hoverfunc(int x, int y) - | ^~~~~~~~~~~~~~~ -main.c: In function 'mouse_hoverfunc': -main.c:87:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 87 | main_ui[MAIN_PAGE1]=hovertest_box(x,y,DS_WIDTH-159, DS_HEIGHT-14, 16, 16); - | ^ -main.c:87:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 87 | main_ui[MAIN_PAGE1]=hovertest_box(x,y,DS_WIDTH-159, DS_HEIGHT-14, 16, 16); - | ^ -main.c:88:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 88 | main_ui[MAIN_PAGE2]=hovertest_box(x,y,DS_WIDTH-137, DS_HEIGHT-14, 16, 16); - | ^ -main.c:88:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 88 | main_ui[MAIN_PAGE2]=hovertest_box(x,y,DS_WIDTH-137, DS_HEIGHT-14, 16, 16); - | ^ -main.c:89:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 89 | main_ui[MAIN_PAGE3]=hovertest_box(x,y,DS_WIDTH-115, DS_HEIGHT-14, 16, 16); - | ^ -main.c:89:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 89 | main_ui[MAIN_PAGE3]=hovertest_box(x,y,DS_WIDTH-115, DS_HEIGHT-14, 16, 16); - | ^ -main.c:90:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 90 | main_ui[MAIN_PAGE4]=hovertest_box(x,y,DS_WIDTH-93, DS_HEIGHT-14, 16, 16); - | ^ -main.c:90:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 90 | main_ui[MAIN_PAGE4]=hovertest_box(x,y,DS_WIDTH-93, DS_HEIGHT-14, 16, 16); - | ^ -main.c:91:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 91 | main_ui[MAIN_ABOUT]=hovertest_box(x,y,DS_WIDTH-42,DS_HEIGHT-14, 16, 73); - | ^ -main.c:91:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 91 | main_ui[MAIN_ABOUT]=hovertest_box(x,y,DS_WIDTH-42,DS_HEIGHT-14, 16, 73); - | ^ -main.c:92:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 92 | main_ui[MAIN_PANIC]=hovertest_box(x, y, DS_WIDTH-206, DS_HEIGHT-14, 16, 16); - | ^ -main.c:92:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 92 | main_ui[MAIN_PANIC]=hovertest_box(x, y, DS_WIDTH-206, DS_HEIGHT-14, 16, 16); - | ^ -main.c:93:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 93 | main_ui[MAIN_VU]=hovertest_box(x,y,728, DS_HEIGHT-14, 16, 100); - | ^ -main.c:93:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 93 | main_ui[MAIN_VU]=hovertest_box(x,y,728, DS_HEIGHT-14, 16, 100); - | ^ -main.c: At top level: -main.c:105:6: warning: no previous prototype for 'mouse_dragfunc' [-Wmissing-prototypes] - 105 | void mouse_dragfunc(int x, int y) - | ^~~~~~~~~~~~~~ -main.c:123:6: warning: no previous prototype for 'mouse_clickfunc' [-Wmissing-prototypes] - 123 | void mouse_clickfunc(int button, int state, int x, int y) - | ^~~~~~~~~~~~~~~ -main.c: In function 'mouse_clickfunc': -main.c:130:47: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 130 | if (main_ui[MAIN_PAGE1]) { console_post("Synthesizers"); cpage=1; return; } - | ^~~~~~~~~~~~~~ -In file included from pattern.h:19, - from buffermm.h:17: -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -main.c:131:47: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 131 | if (main_ui[MAIN_PAGE2]) { console_post("Patches"); cpage=2; return; } - | ^~~~~~~~~ -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -main.c:132:47: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 132 | if (main_ui[MAIN_PAGE3]) { console_post("Patterns"); cpage=3; return; } - | ^~~~~~~~~~ -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -main.c:133:47: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 133 | if (main_ui[MAIN_PAGE4]) { console_post("Sequencer"); cpage=4; return; } - | ^~~~~~~~~~~ -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -main.c:134:46: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 134 | if (main_ui[MAIN_ABOUT]) { dialog_open(&about_draw, &about_hover, &about_click); dialog_bindkeyboard(&about_keyboard); return; } - | ^~~~~~~~~~~ -dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~ -main.c:134:59: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 134 | if (main_ui[MAIN_ABOUT]) { dialog_open(&about_draw, &about_hover, &about_click); dialog_bindkeyboard(&about_keyboard); return; } - | ^~~~~~~~~~~~ -dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ -main.c:134:73: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 134 | if (main_ui[MAIN_ABOUT]) { dialog_open(&about_draw, &about_hover, &about_click); dialog_bindkeyboard(&about_keyboard); return; } - | ^~~~~~~~~~~~ -dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ -main.c:134:108: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] - 134 | if (main_ui[MAIN_ABOUT]) { dialog_open(&about_draw, &about_hover, &about_click); dialog_bindkeyboard(&about_keyboard); return; } - | ^~~~~~~~~~~~~~~ -dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' - 23 | void dialog_bindkeyboard(void *kbfunc); - | ~~~~~~^~~~~~ -main.c:141:61: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 141 | if (main_ui[MAIN_VU]) { audio_peak=0.0f; console_post("VU meter peak reset"); return; } - | ^~~~~~~~~~~~~~~~~~~~~ -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -main.c: At top level: -main.c:155:6: warning: no previous prototype for 'keyboardfunc' [-Wmissing-prototypes] - 155 | void keyboardfunc(unsigned char key, int x, int y) - | ^~~~~~~~~~~~ -main.c:168:6: warning: no previous prototype for 'keyboardupfunc' [-Wmissing-prototypes] - 168 | void keyboardupfunc(unsigned char key, int x, int y) - | ^~~~~~~~~~~~~~ -main.c:179:6: warning: no previous prototype for 'specialkeyfunc' [-Wmissing-prototypes] - 179 | void specialkeyfunc(int key, int x, int y) - | ^~~~~~~~~~~~~~ -main.c: In function 'specialkeyfunc': -main.c:186:39: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion] - 186 | case MAIN_PAGE1: synth_specialkey(key, x, y); break; - | ^~~ -main.c:187:39: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion] - 187 | case MAIN_PAGE2: patch_specialkey(key, x, y); break; - | ^~~ -main.c:188:41: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion] - 188 | case MAIN_PAGE3: pattern_specialkey(key, x, y); break; - | ^~~ -main.c:184:3: warning: switch missing default case [-Wswitch-default] - 184 | switch (cpage) - | ^~~~~~ -pattern.c:601:72: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 601 | glVertex2f(PIANOROLL_X+(i+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -main.c:195:36: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 195 | if (cpage!=1) { console_post("Synthesizers"); cpage=1;} - | ^~~~~~~~~~~~~~ -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -main.c:198:36: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 198 | if (cpage!=2) { console_post("Patches"); cpage=2; } - | ^~~~~~~~~ -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -pattern.c:37:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 37 | #define PIANOROLL_X KB_WIDTH+5.5 - | ^ -pattern.c:602:24: note: in expansion of macro 'PIANOROLL_X' - 602 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^~~~~~~~~~~ -patch.c:622:45: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 622 | f=knob_scale2float(mod[csynth][mi].scale, f); - | ~~~~~~~~~~~~~~~^~~~~~ -pattern.c:602:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 602 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ modules.c:343:3: warning: conversion from 'float' to 'int' changes value from '3.05e+1f' to '30' [-Wfloat-conversion] 343 | (MODULE_HALF)+0.5, -(MODULE_HALF)+0.5, MODULE_HALF, MODULE_HALF}; | ^ -patch.c:618:5: warning: switch missing default case [-Wswitch-default] - 618 | switch(modModulatorTypes[mod[csynth][mi].type]) { - | ^~~~~~ modules.c:343:22: warning: conversion from 'float' to 'int' changes value from '-2.95e+1f' to '-29' [-Wfloat-conversion] 343 | (MODULE_HALF)+0.5, -(MODULE_HALF)+0.5, MODULE_HALF, MODULE_HALF}; | ^ -pattern.c:602:70: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 602 | glVertex2f(l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ modules.c:353:6: warning: function declaration isn't a prototype [-Wstrict-prototypes] 353 | void calc_supersaw_tables() { | ^~~~~~~~~~~~~~~~~~~~ modules.c: In function 'calc_supersaw_tables': modules.c:353:6: warning: old-style function definition [-Wold-style-definition] -pattern.c:37:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 37 | #define PIANOROLL_X KB_WIDTH+5.5 - | ^ -pattern.c:607:15: note: in expansion of macro 'PIANOROLL_X' - 607 | l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH+1, - | ^~~~~~~~~~~ -patch.c:643:9: warning: this 'if' clause does not guard... [-Wmisleading-indentation] - 643 | if (modquantifier[ csynth ][cpatch[csynth]][ mi ]<32) modquantifier[ csynth ][cpatch[csynth]][ mi ]++; return; - | ^~ modules.c:359:26: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 359 | supersaw_mix[mod][0]=-0.55366*x + 0.99785; | ^ -pattern.c:607:26: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 607 | l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH+1, - | ^ -patch.c:643:112: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' - 643 | if (modquantifier[ csynth ][cpatch[csynth]][ mi ]<32) modquantifier[ csynth ][cpatch[csynth]][ mi ]++; return; - | ^~~~~~ modules.c:362:33: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 362 | supersaw_detune[mod][osc]=1.0+osc_offset[osc]*y; | ^~~ -pattern.c:608:26: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 608 | PIANOROLL_Y-2-(n-coct*12+1)*PIANOROLL_CELLHEIGHT, - | ^ -patch.c:647:9: warning: this 'if' clause does not guard... [-Wmisleading-indentation] - 647 | if (modquantifier[ csynth ][cpatch[csynth]][ mi ]>12) modquantifier[ csynth ][cpatch[csynth]][ mi ]--; return; - | ^~ modules.c:363:39: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 363 | if (osc) supersaw_mix[mod][osc]=-0.73764*x*x + 1.2841*x + 0.044372; | ^ modules.c: At top level: -patch.c:647:112: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' - 647 | if (modquantifier[ csynth ][cpatch[csynth]][ mi ]>12) modquantifier[ csynth ][cpatch[csynth]][ mi ]--; return; - | ^~~~~~ -pattern.c:37:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 37 | #define PIANOROLL_X KB_WIDTH+5.5 - | ^ -pattern.c:611:15: note: in expansion of macro 'PIANOROLL_X' - 611 | l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, - | ^~~~~~~~~~~ modules.h:29:39: warning: no previous prototype for 'modfunc_kbd' [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ @@ -2849,10 +2362,6 @@ modules.c:378:1: note: in expansion of macro 'MODULE_FUNC' 378 | MODULE_FUNC(kbd) { return *mod=pitch[v]/OUTPUTFREQ; } | ^~~~~~~~~~~ -pattern.c:611:26: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 611 | l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH, - | ^ -patch.c: In function 'patch_modulator_special': modules.h:29:101: warning: unused parameter 'ms' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~~^~ @@ -2866,12 +2375,6 @@ modules.c:380:1: note: in expansion of macro 'MODULE_FUNC' 380 | MODULE_FUNC(modulator) { | ^~~~~~~~~~~ -pattern.c:612:26: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 612 | PIANOROLL_Y-2-(n-coct*12+1)*PIANOROLL_CELLHEIGHT, - | ^ -patch.c:674:39: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 674 | f=knob_float2scale(mod[csynth][mi].scale, modvalue[ csynth ][cpatch[csynth]][ mi ]); - | ~~~~~~~~~~~~~~~^~~~~~ modules.c: In function 'modfunc_modulator': modules.h:29:88: warning: unused parameter 'data' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) @@ -2893,9 +2396,6 @@ 390 | MODULE_FUNC(output) { return ms[0]*(*mod); } | ^~~~~~~~~~~ modules.c: In function 'modfunc_output': -pattern.c:634:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 634 | glVertex2f(1+PIANOROLL_X+j*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ modules.h:29:67: warning: unused parameter 'v' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~~~~~~~~~^ @@ -2909,12 +2409,6 @@ 390 | MODULE_FUNC(output) { return ms[0]*(*mod); } | ^~~~~~~~~~~ modules.c: At top level: -pattern.c:634:68: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 634 | glVertex2f(1+PIANOROLL_X+j*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -patch.c:713:78: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 713 | modvalue[ csynth ][cpatch[csynth]][ mi ]=knob_scale2float(mod[csynth][mi].scale, f); - | ~~~~~~~~~~~~~~~^~~~~~ modules.h:29:39: warning: no previous prototype for 'modfunc_accent' [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ @@ -2928,18 +2422,12 @@ modules.c:393:1: note: in expansion of macro 'MODULE_FUNC' 393 | MODULE_FUNC(accent) { | ^~~~~~~~~~~ -pattern.c:635:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 635 | glVertex2f(PIANOROLL_X+(j+l)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ modules.h:29:101: warning: unused parameter 'ms' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~~^~ modules.c:393:1: note: in expansion of macro 'MODULE_FUNC' 393 | MODULE_FUNC(accent) { | ^~~~~~~~~~~ -patch.c:662:43: warning: unused parameter 'x' [-Wunused-parameter] - 662 | void patch_modulator_special(int key, int x, int y) - | ~~~~^ modules.c: At top level: modules.h:29:39: warning: no previous prototype for 'modfunc_vco' [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) @@ -2947,438 +2435,136 @@ modules.c:398:1: note: in expansion of macro 'MODULE_FUNC' 398 | MODULE_FUNC(vco) // phase-accumulating oscillator w/ suboscillator | ^~~~~~~~~~~ -patch.c:662:50: warning: unused parameter 'y' [-Wunused-parameter] - 662 | void patch_modulator_special(int key, int x, int y) - | ~~~~^ modules.c: In function 'modfunc_vco': modules.c:403:17: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 403 | mod_fdata[0]-=floor(mod_fdata[0]); | ^~~~~ -patch.c: In function 'patch_modulator_keyboard': +pattern.c:707:37: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 707 | draw_button(64, DS_HEIGHT-14, 16, ">>", patt_ui[B_NEXT]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ modules.c:407:17: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 407 | mod_fdata[1]-=floor(mod_fdata[1]); | ^~~~~ -patch.c:739:45: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 739 | f=knob_scale2float(mod[csynth][mi].scale, f); - | ~~~~~~~~~~~~~~~^~~~~~ +pattern.c:709:37: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 709 | draw_button(98, DS_HEIGHT-14, 16, "<<", patt_ui[B_SHORTER]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ modules.c:416:28: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 416 | case VCO_TRIANGLE: out=(mod_fdata[0]<0.75) ? 1-fabs(mod_fdata[0]*4-1) : 1-fabs(mod_fdata[0]*4-5); break; | ^ -patch.c:735:5: warning: switch missing default case [-Wswitch-default] - 735 | switch(modModulatorTypes[mod[csynth][mi].type]) { - | ^~~~~~ +pattern.c:712:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 712 | draw_button(180, DS_HEIGHT-14, 16, ">>", patt_ui[B_LONGER]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ modules.c:417:28: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 417 | case VCO_SINE: out=sin(2*3.1415926* mod_fdata[0]); break; | ^~~ modules.c:412:3: warning: switch missing default case [-Wswitch-default] 412 | switch((int)(*mod)) | ^~~~~~ -patch.c:718:54: warning: unused parameter 'x' [-Wunused-parameter] - 718 | void patch_modulator_keyboard(unsigned char key, int x, int y) - | ~~~~^ -patch.c:718:61: warning: unused parameter 'y' [-Wunused-parameter] - 718 | void patch_modulator_keyboard(unsigned char key, int x, int y) - | ~~~~^ +pattern.c:714:41: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 714 | draw_button(12, PIANOROLL_Y+15.5, 16, "DN", patt_ui[B_OCTDN]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ modules.c:426:29: warning: conversion from 'unsigned int' to 'float' changes value from '4294967295' to '4.2949673e+9f' [-Wfloat-conversion] 426 | out+=ms[3]*(noise_x2*(2.0f/0xffffffff)); | ^ -patch.c: In function 'knob_scale2float': +pattern.c:715:41: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 715 | draw_button(32, PIANOROLL_Y+15.5, 16, "UP", patt_ui[B_OCTUP]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ modules.c:426:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] 426 | out+=ms[3]*(noise_x2*(2.0f/0xffffffff)); | ^ modules.c: At top level: -patch.c:770:46: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 770 | case SCALE_FREQUENCY_TEMPO: return (value*bpm)/(60*OUTPUTFREQ); - | ^ modules.h:29:39: warning: no previous prototype for 'modfunc_lfo' [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:433:1: note: in expansion of macro 'MODULE_FUNC' 433 | MODULE_FUNC(lfo) { // low-frequency oscillator, input is freq in hz, cv output (0 to 1.0) | ^~~~~~~~~~~ +pattern.c:717:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 717 | draw_button(214, DS_HEIGHT-14, 16, "<<", patt_ui[B_PREVSYN]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ modules.c: In function 'modfunc_lfo': -patch.c:771:47: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 771 | case SCALE_DURATION_TEMPO: return (60/(bpm*value))*OUTPUTFREQ; - | ^ +In file included from pattern.h:18, + from buffermm.h:17: +audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 56 | int audio_exportwav(); //char *filename); + | ^~~ modules.c:440:17: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 440 | mod_fdata[0]-=floor(mod_fdata[0]); | ^~~~~ -patch.c:775:73: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 775 | case SCALE_MIDI_NOTE: return 8.1757989156 * pow(1.059463094, value) / OUTPUTFREQ; +pattern.c:720:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 720 | draw_button(430, DS_HEIGHT-14, 16, ">>", patt_ui[B_NEXTSYN]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ modules.c:444:28: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 444 | case LFO_SINE: out=-0.5*(cos(2*3.1415926*mod_fdata[0])-1); break; | ^ -font.c: In function 'font_init': -font.c:83:5: warning: '__builtin_strncpy' output may be truncated copying 511 bytes from a string of length 511 [-Wstringop-truncation] - 83 | strncpy(fullpath, respath, 511); - | ^ -font.c:84:5: warning: '__builtin___strncat_chk' output may be truncated copying 511 bytes from a string of length 2039 [-Wstringop-truncation] - 84 | strncat(fullpath, fontfile[i], 511); - | ^ modules.c:442:3: warning: switch missing default case [-Wswitch-default] 442 | switch((int)(*mod)) { | ^~~~~~ -patch.c:776:38: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 776 | case SCALE_NOTE_INTERVAL: return pow(1.059463094, value); - | ^~~~~~~~~~~~~~~~~~~~~~~ modules.c: At top level: -modules.h:29:39: warning: no previous prototype for 'modfunc_env' [-Wmissing-prototypes] - 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) - | ^~~~~~~~ -modules.c:453:1: note: in expansion of macro 'MODULE_FUNC' - 453 | MODULE_FUNC(env) // linear adsr envelope generator - | ^~~~~~~~~~~ -patch.c:767:3: warning: switch missing default case [-Wswitch-default] - 767 | switch(scale) { - | ^~~~~~ -patch.c: In function 'knob_float2scale': -patch.c:786:61: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 786 | case SCALE_FREQUENCY_TEMPO: return (value*60*OUTPUTFREQ)/bpm; - | ^ -modules.c: In function 'modfunc_env': -sequencer.c:265:37: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] - 265 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { - | ^ -main.c:201:36: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 201 | if (cpage!=3) { console_post("Patterns"); cpage=3; } - | ^~~~~~~~~~ -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -sequencer.c: In function 'sequencer_patternstart': -main.c:204:36: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 204 | if (cpage!=4) { console_post("Sequencer"); cpage=4; } - | ^~~~~~~~~~~ -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ -sequencer.c:281:69: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 281 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { - | ^ -pattern.c:635:70: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 635 | glVertex2f(PIANOROLL_X+(j+l)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -sequencer.c:281:41: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 281 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { - | ^ -main.c: At top level: -sequencer.c:281:37: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] - 281 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { - | ^ -main.c:212:6: warning: no previous prototype for 'update' [-Wmissing-prototypes] - 212 | void update(int value) - | ^~~~~~ -sequencer.c: At top level: -sequencer.c:298:5: warning: no previous prototype for 'sequencer_cursorpos' [-Wmissing-prototypes] - 298 | int sequencer_cursorpos(int x, int y, int *channel, int *measure) - | ^~~~~~~~~~~~~~~~~~~ -main.c:222:7: warning: no previous prototype for 'audio_playback' [-Wmissing-prototypes] - 222 | void *audio_playback(void *param) - | ^~~~~~~~~~~~~~ -main.c: In function 'audio_playback': -pattern.c:636:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 636 | glVertex2f(PIANOROLL_X+(j+l)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -sequencer.c: In function 'sequencer_cursorpos': -main.c:224:7: warning: variable 'rc' set but not used [-Wunused-but-set-variable] - 224 | int rc; - | ^~ -sequencer.c:304:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 304 | x < (SEQUENCER_X + seqsonglen*SEQUENCER_CELLWIDTH + 1) && - | ^ -main.c:222:28: warning: unused parameter 'param' [-Wunused-parameter] - 222 | void *audio_playback(void *param) - | ~~~~~~^~~~~ -main.c: At top level: -sequencer.c:306:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 306 | y < (SEQUENCER_Y + seqch*SEQUENCER_CELLHEIGHT) - | ^ -main.c:233:7: warning: no previous prototype for 'audio_renderer' [-Wmissing-prototypes] - 233 | void *audio_renderer(void *param) - | ^~~~~~~~~~~~~~ -pattern.c:636:68: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 636 | glVertex2f(PIANOROLL_X+(j+l)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -sequencer.c:309:16: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 309 | cx=(int)((x-SEQUENCER_X)/SEQUENCER_CELLWIDTH); - | ^ -main.c: In function 'audio_renderer': -main.c:235:7: warning: variable 'rc' set but not used [-Wunused-but-set-variable] - 235 | int rc; - | ^~ -sequencer.c:310:16: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 310 | cy=(int)((y-SEQUENCER_Y)/SEQUENCER_CELLHEIGHT); - | ^ -main.c:233:28: warning: unused parameter 'param' [-Wunused-parameter] - 233 | void *audio_renderer(void *param) - | ~~~~~~^~~~~ -main.c: At top level: -pattern.c:637:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 637 | glVertex2f(1+PIANOROLL_X+j*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -sequencer.c:318:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 318 | x < (SEQUENCER_X + seqsonglen*SEQUENCER_CELLWIDTH + 1) && - | ^ -main.c:248:6: warning: no previous prototype for 'display' [-Wmissing-prototypes] - 248 | void display(void) - | ^~~~~~~ -sequencer.c:319:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 319 | y > (SEQUENCER_Y + (seqch+2)*SEQUENCER_CELLHEIGHT) && - | ^ -sequencer.c:320:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 320 | y < (SEQUENCER_Y + (seqch+3)*SEQUENCER_CELLHEIGHT) - | ^ -pattern.c:637:66: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 637 | glVertex2f(1+PIANOROLL_X+j*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -sequencer.c:323:16: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 323 | cx=(int)((x-SEQUENCER_X)/SEQUENCER_CELLWIDTH); - | ^ -main.c: In function 'display': -sequencer.c: At top level: -main.c:284:47: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 284 | draw_button(DS_WIDTH-159, DS_HEIGHT-14, 16, "1", main_ui[MAIN_PAGE1]); - | ^~~ -sequencer.c:333:5: warning: no previous prototype for 'sequencer_timelinepos' [-Wmissing-prototypes] - 333 | int sequencer_timelinepos(int x, int y) { - | ^~~~~~~~~~~~~~~~~~~~~ -sequencer.c: In function 'sequencer_timelinepos': -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -pattern.c:645:7: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 645 | n=pattdata[cpatt][piano_start+piano_porta_drag]; - | ^~~~~~~~ -sequencer.c:337:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 337 | x < (SEQUENCER_X + seqsonglen*SEQUENCER_CELLWIDTH + 1) && - | ^ -main.c:285:47: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 285 | draw_button(DS_WIDTH-137, DS_HEIGHT-14, 16, "2", main_ui[MAIN_PAGE2]); - | ^~~ -sequencer.c:338:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 338 | y > (SEQUENCER_Y + (seqch+3)*SEQUENCER_CELLHEIGHT) && - | ^ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -sequencer.c:339:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 339 | y < (SEQUENCER_Y + (seqch+4)*SEQUENCER_CELLHEIGHT+4) - | ^ -main.c:286:47: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 286 | draw_button(DS_WIDTH-115, DS_HEIGHT-14, 16, "3", main_ui[MAIN_PAGE3]); - | ^~~ -pattern.c:648:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 648 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ +pattern.c:722:17: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 722 | ticks=playpos / (OUTPUTFREQ/(bpm*256/60)); + | ^ +pattern.c:722:9: warning: conversion to 'long int' from 'long unsigned int' may change the sign of the result [-Wsign-conversion] + 722 | ticks=playpos / (OUTPUTFREQ/(bpm*256/60)); + | ^~~~~~~ +pattern.c:730:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 730 | draw_button(555, DS_HEIGHT-14, 16, "X", patt_ui[B_PATTCLEAR]); + | ^~~ widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' 37 | void draw_button(float x, float y, float size, char *label, int type); | ~~~~~~^~~~~ -sequencer.c:341:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 341 | return (int)((x-SEQUENCER_X)/SEQUENCER_CELLWIDTH); - | ^ -main.c:287:46: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 287 | draw_button(DS_WIDTH-93, DS_HEIGHT-14, 16, "4", main_ui[MAIN_PAGE4]); - | ^~~ +pattern.c:732:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 732 | draw_button(622, DS_HEIGHT-14, 16, "C", patt_ui[B_COPY]); + | ^~~ widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' 37 | void draw_button(float x, float y, float size, char *label, int type); | ~~~~~~^~~~~ -sequencer.c: In function 'sequencer_mouse_hover': -pattern.c:648:81: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 648 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -sequencer.c:351:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 351 | seq_ui[B_DECCH]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); - | ^ -main.c:288:51: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 288 | draw_textbox(DS_WIDTH-42, DS_HEIGHT-14, 16, 74, "komposter", main_ui[MAIN_ABOUT]); - | ^~~~~~~~~~~ -widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' - 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); - | ~~~~~~^~~~~ -sequencer.c:351:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 351 | seq_ui[B_DECCH]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:352:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 352 | seq_ui[B_ADDCH]=hovertest_box(x, y, 80, DS_HEIGHT-14, 16, 16); - | ^ -main.c:292:47: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 292 | draw_button(DS_WIDTH-206, DS_HEIGHT-14, 16, "!!!", main_ui[MAIN_PANIC]); - | ^~~~~ +pattern.c:733:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 733 | draw_button(644, DS_HEIGHT-14, 16, "V", patt_ui[B_PASTE]); + | ^~~ widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' 37 | void draw_button(float x, float y, float size, char *label, int type); | ~~~~~~^~~~~ -pattern.c:649:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 649 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -sequencer.c:352:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 352 | seq_ui[B_ADDCH]=hovertest_box(x, y, 80, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:357:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 357 | seq_ui[B_BPM]=hovertest_box(x, y, 151, DS_HEIGHT-14, 16, 46); - | ^ -main.c:295:6: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 295 | rf=fmin(1.0f, audio_latest_peak); - | ^~~~ -sequencer.c:357:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 357 | seq_ui[B_BPM]=hovertest_box(x, y, 151, DS_HEIGHT-14, 16, 46); - | ^ -pattern.c:649:102: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 649 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -sequencer.c:358:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 358 | seq_ui[B_SSHORTER]=hovertest_box(x, y, 222, DS_HEIGHT-14, 16, 16); - | ^ -main.c:298:44: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 298 | draw_textbox(728, DS_HEIGHT-14, 16, 100, "", main_ui[MAIN_VU]); - | ^~ -widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' - 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); - | ~~~~~~^~~~~ -sequencer.c:358:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 358 | seq_ui[B_SSHORTER]=hovertest_box(x, y, 222, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:359:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 359 | seq_ui[B_SLONGER]=hovertest_box(x, y, 304, DS_HEIGHT-14, 16, 16); - | ^ -pattern.c:650:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 650 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -sequencer.c:359:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 359 | seq_ui[B_SLONGER]=hovertest_box(x, y, 304, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:361:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 361 | seq_ui[B_SAVE_SONG]=hovertest_box(x, y, 350, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:361:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 361 | seq_ui[B_SAVE_SONG]=hovertest_box(x, y, 350, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:362:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 362 | seq_ui[B_LOAD_SONG]=hovertest_box(x, y, 372, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:362:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 362 | seq_ui[B_LOAD_SONG]=hovertest_box(x, y, 372, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:364:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 364 | seq_ui[B_CLEAR]=hovertest_box(x, y, 462, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:364:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 364 | seq_ui[B_CLEAR]=hovertest_box(x, y, 462, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:365:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 365 | seq_ui[B_REWIND]=hovertest_box(x, y, 440, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:365:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 365 | seq_ui[B_REWIND]=hovertest_box(x, y, 440, DS_HEIGHT-14, 16, 16); - | ^ -sequencer.c:367:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 367 | seq_ui[B_NEWSONG]=hovertest_box(x, y, 394, DS_HEIGHT-14, 16, 16) | (seq_ui[B_NEWSONG]&8); - | ^ -main.c:310:24: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 310 | unsigned int color=0x00b05500|(panic<<24); - | ^~~~~~~~~~ -sequencer.c:367:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 367 | seq_ui[B_NEWSONG]=hovertest_box(x, y, 394, DS_HEIGHT-14, 16, 16) | (seq_ui[B_NEWSONG]&8); - | ^ -sequencer.c:369:32: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 369 | seq_ui[B_LOOP]=hovertest_box(x, y, 630, DS_HEIGHT-14, 16, 48); - | ^ -main.c: At top level: -sequencer.c:369:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 369 | seq_ui[B_LOOP]=hovertest_box(x, y, 630, DS_HEIGHT-14, 16, 48); - | ^ -main.c:322:6: warning: no previous prototype for 'cleanup' [-Wmissing-prototypes] - 322 | void cleanup(void) - | ^~~~~~~ -sequencer.c:373:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 373 | seq_ui[B_RENDER]=hovertest_box(x, y, 578, DS_HEIGHT-14, 16, 42); - | ^ -main.c:332:5: warning: no previous prototype for 'is_dir' [-Wmissing-prototypes] - 332 | int is_dir(const char *path) - | ^~~~~~ -sequencer.c:373:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 373 | seq_ui[B_RENDER]=hovertest_box(x, y, 578, DS_HEIGHT-14, 16, 42); - | ^ -sequencer.c:378:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 378 | seq_ui[B_SEQPLAY]|=hovertest_box(x, y, 526, DS_HEIGHT-14, 16, 42); - | ^ -sequencer.c:378:41: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 378 | seq_ui[B_SEQPLAY]|=hovertest_box(x, y, 526, DS_HEIGHT-14, 16, 42); - | ^ -main.c: In function 'main': -sequencer.c:381:64: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 381 | seqslide_hover=hovertest_hslider(x,y,SEQUENCER_X, SEQUENCER_Y+(seqch+5)*SEQUENCER_CELLHEIGHT, (DS_WIDTH-(SEQUENCER_X+6)), 12, - | ^ -main.c:435:15: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 435 | dialog_open(&about_draw, &about_hover, &about_click); - | ^~~~~~~~~~~ -dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~ -sequencer.c:381:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 381 | seqslide_hover=hovertest_hslider(x,y,SEQUENCER_X, SEQUENCER_Y+(seqch+5)*SEQUENCER_CELLHEIGHT, (DS_WIDTH-(SEQUENCER_X+6)), 12, - | ^ -sequencer.c:381:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 381 | seqslide_hover=hovertest_hslider(x,y,SEQUENCER_X, SEQUENCER_Y+(seqch+5)*SEQUENCER_CELLHEIGHT, (DS_WIDTH-(SEQUENCER_X+6)), 12, - | ^ -main.c:435:28: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 435 | dialog_open(&about_draw, &about_hover, &about_click); - | ^~~~~~~~~~~~ -dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ -sequencer.c:382:4: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 382 | seq_start, (DS_WIDTH-(SEQUENCER_X+4))/SEQUENCER_CELLWIDTH, seqsonglen); - | ^~~~~~~~~ -main.c:435:42: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 435 | dialog_open(&about_draw, &about_hover, &about_click); - | ^~~~~~~~~~~~ -dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ -sequencer.c:382:63: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 382 | seq_start, (DS_WIDTH-(SEQUENCER_X+4))/SEQUENCER_CELLWIDTH, seqsonglen); - | ^~~~~~~~~~ -main.c:436:23: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] - 436 | dialog_bindkeyboard(&about_keyboard); - | ^~~~~~~~~~~~~~~ -dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' - 23 | void dialog_bindkeyboard(void *kbfunc); - | ~~~~~~^~~~~~ -sequencer.c:393:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 393 | y < (SEQUENCER_Y + (seqch+3)*SEQUENCER_CELLHEIGHT) - | ^ -sequencer.c:396:15: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 396 | m=(int)((y-SEQUENCER_Y)/SEQUENCER_CELLHEIGHT); - | ^ In file included from synthesizer.h:24, - from synthesizer.c:13: + from patch.h:21, + from fileops.c:20: audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] 56 | int audio_exportwav(); //char *filename); | ^~~ -sequencer.c: In function 'sequencer_mouse_drag': -sequencer.c:412:9: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 412 | cip=seqsonglen; //pattlen[cpatt]*16; // cells in pattern - | ^~~~~~~~~~ -sequencer.c:414:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 414 | f=((x-seqslide_drag_xofs)/(sbw-slw))*(cip-cos); - | ^ -sequencer.c:415:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 415 | seq_start=seqslide_drag_start+f; - | ^ -sequencer.c:415:15: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] - 415 | seq_start=seqslide_drag_start+f; - | ^~~~~~~~~~~~~~~~~~~ -In file included from buffermm.h:16, - from synthesizer.h:25: -modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 152 | void calc_supersaw_tables(); - | ^~~~ +modules.h:29:39: warning: no previous prototype for 'modfunc_env' [-Wmissing-prototypes] + 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) + | ^~~~~~~~ +modules.c:453:1: note: in expansion of macro 'MODULE_FUNC' + 453 | MODULE_FUNC(env) // linear adsr envelope generator + | ^~~~~~~~~~~ +shader.c:43:8: warning: no previous prototype for 'loadshader' [-Wmissing-prototypes] + 43 | GLuint loadshader(char *fname, GLuint type) + | ^~~~~~~~~~ +modules.c: In function 'modfunc_env': modules.c:470:16: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 470 | mod_ldata[1]=gate[v]; // save current gate | ^~~~ -patch.c:787:61: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 787 | case SCALE_DURATION_TEMPO: return (OUTPUTFREQ*60)/(value*bpm); - | ^ modules.h:29:77: warning: unused parameter 'mod' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~~^~~ @@ -3386,25 +2572,23 @@ 453 | MODULE_FUNC(env) // linear adsr envelope generator | ^~~~~~~~~~~ modules.c: At top level: +In file included from synthesizer.h:29: +dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 16 | int dotfile_load(); + | ^~~ modules.h:29:39: warning: no previous prototype for 'modfunc_vcf' [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:475:1: note: in expansion of macro 'MODULE_FUNC' 475 | MODULE_FUNC(vcf) // 12db/oct resonant state variable low-/high-/bandpass filter | ^~~~~~~~~~~ -patch.c:791:48: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 791 | case SCALE_MIDI_NOTE: return 17.31234049667*log(0.12231220586*value*OUTPUTFREQ); - | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -patch.c:792:52: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 792 | case SCALE_NOTE_INTERVAL: return 17.31234049667*log(value); - | ~~~~~~~~~~~~~~^~~~~~~~~~~ +dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 17 | int dotfile_save(); + | ^~~ modules.c: In function 'modfunc_vcf': modules.c:487:7: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 487 | f = 2*sin(3.14159 * ms[1]); // cutoff in [0.0, 1.0] | ^ -patch.c:783:3: warning: switch missing default case [-Wswitch-default] - 783 | switch(scale) { - | ^~~~~~ modules.c:489:5: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 489 | r=sqrt(q); | ^~~~ @@ -3424,9 +2608,6 @@ modules.c:509:1: note: in expansion of macro 'MODULE_FUNC' 509 | MODULE_FUNC(delay) | ^~~~~~~~~~~ -pattern.c:650:100: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 650 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ modules.c: In function 'modfunc_delay': modules.c:27:20: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] 27 | #define mod_ldata ((u32*)data) @@ -3434,113 +2615,200 @@ modules.c:515:12: note: in expansion of macro 'mod_ldata' 515 | writeptr=mod_ldata[2]; | ^~~~~~~~~ -pattern.c:651:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 651 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ modules.c:521:24: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] 521 | if (ms[2]>1) loopend=ms[2]; // use loop input if greater than 1 sample | ^~ -pattern.c:651:79: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 651 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:653:31: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] - 653 | if (piano_porta_drag_from != pattdata[cpatt][piano_start+piano_porta_drag]) { - | ^~ +synthesizer.h:84:6: warning: redundant redeclaration of 'synth_stackify' [-Wredundant-decls] + 84 | void synth_stackify(int syn); + | ^~~~~~~~~~~~~~ +In file included from fileops.c:18: +fileops.h:62:6: note: previous declaration of 'synth_stackify' with type 'void(int)' + 62 | void synth_stackify(int syn); + | ^~~~~~~~~~~~~~ +synthesizer.h:85:5: warning: redundant redeclaration of 'synth_trace' [-Wredundant-decls] + 85 | int synth_trace(int syn, int pm, int fifo); + | ^~~~~~~~~~~ +fileops.h:63:5: note: previous declaration of 'synth_trace' with type 'int(int, int, int)' + 63 | int synth_trace(int syn, int pm, int top); + | ^~~~~~~~~~~ +fileops.c: In function 'load_ksong': +fileops.c:71:12: warning: conversion from 'long int' to 'int' may change value [-Wconversion] + 71 | chunklen=probe_chunk(f, chunktype); + | ^~~~~~~~~~~ +fileops.c:77:8: warning: conversion from 'long int' to 'int' may change value [-Wconversion] + 77 | flen=ftell(f); + | ^~~~~ +fileops.c:86:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 86 | r=fread(&cpat, sizeof(int), 1, f); + | ^~~~~ +fileops.c:91:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 91 | r=fread(&csyn, sizeof(int), 1, f); + | ^~~~~ +fileops.c:63:10: warning: variable 'r' set but not used [-Wunused-but-set-variable] + 63 | int i, r, cpat, csyn; + | ^ +fileops.c: In function 'save_ksong': +fileops.c:124:18: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] + 124 | for(n=0,i=0;ifmask, ext, 255); + | ^ +fileops.c:270:27: warning: passing argument 2 of 'load_chunk' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 270 | chunkdata=load_chunk(f, "KPAT"); + | ^~~~~~ +fileops.h:55:33: note: expected 'char *' but argument is of type 'const char *' + 55 | void* load_chunk(FILE *f, char *chunktype); + | ~~~~~~^~~~~~~~~ +fileops.c: In function 'load_chunk_kseq': +fileops.c:287:27: warning: passing argument 2 of 'load_chunk' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 287 | chunkdata=load_chunk(f, "KSEQ"); + | ^~~~~~ +fileops.h:55:33: note: expected 'char *' but argument is of type 'const char *' + 55 | void* load_chunk(FILE *f, char *chunktype); + | ~~~~~~^~~~~~~~~ +fileops.c:294:38: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] + 294 | memcpy(seq_synth, &chunkdata[12], 4*seqch); + | ~^~~~~~ +fileops.c:300:11: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 300 | filepos=12 + 4*seqch; + | ^~ +fileops.c:301:65: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 301 | for(i=0;i(1+cip-cos)) seq_start=(1+cip-cos); - | ^ modules.c: At top level: +fileops.c:304:98: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] + 304 | for(i=0;i1.0) out = out/fabs(out); | ^~~ -sequencer.c: In function 'sequencer_mouse_click': -sequencer.c:458:24: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 458 | console_post("Song cleared and everything reset back to defaults"); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In file included from pattern.h:19, - from buffermm.h:17: -console.h:23:25: note: expected 'char *' but argument is of type 'const char *' - 23 | void console_post(char *msg); - | ~~~~~~^~~ +fileops.c:307:101: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] + 307 | for(i=0;i=0) { if (signalfifo[syn][m]>mm) mm=signalfifo[syn][m]; m++; } + | ^ modules.h:29:101: warning: unused parameter 'ms' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~~^~ modules.c:583:1: note: in expansion of macro 'MODULE_FUNC' 583 | MODULE_FUNC(cv) { return *mod; } | ^~~~~~~~~~~ -sequencer.c:502:21: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 502 | dialog_open(&sequencer_draw_render, &sequencer_render_hover, &sequencer_render_click); - | ^~~~~~~~~~~~~~~~~~~~~~ -dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~ modules.c: At top level: -sequencer.c:502:45: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 502 | dialog_open(&sequencer_draw_render, &sequencer_render_hover, &sequencer_render_click); - | ^~~~~~~~~~~~~~~~~~~~~~~ +fileops.c:374:64: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 374 | while(signalfifo[syn][m]>=0) { if (signalfifo[syn][m]>mm) mm=signalfifo[syn][m]; m++; } + | ^~~~~~~~~~ modules.h:29:39: warning: no previous prototype for 'modfunc_amp' [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:584:1: note: in expansion of macro 'MODULE_FUNC' 584 | MODULE_FUNC(amp) { return ms[0]*ms[1]; } | ^~~~~~~~~~~ -dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ modules.c: In function 'modfunc_amp': -sequencer.c:502:70: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 502 | dialog_open(&sequencer_draw_render, &sequencer_render_hover, &sequencer_render_click); - | ^~~~~~~~~~~~~~~~~~~~~~~ -dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ +fileops.c:378:9: warning: conversion from 'long unsigned int' to 'unsigned int' may change value [-Wconversion] + 378 | dsize=8 + MAX_PATCHES * (128 + 3*stacklen*4); + | ^ modules.h:29:67: warning: unused parameter 'v' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~~~~~~~~~^ modules.c:584:1: note: in expansion of macro 'MODULE_FUNC' 584 | MODULE_FUNC(amp) { return ms[0]*ms[1]; } | ^~~~~~~~~~~ -sequencer.c:503:29: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] - 503 | dialog_bindkeyboard(&sequencer_render_keyboard); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~ -dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' - 23 | void dialog_bindkeyboard(void *kbfunc); - | ~~~~~~^~~~~~ modules.h:29:77: warning: unused parameter 'mod' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~~^~~ @@ -3632,45 +2880,6 @@ modules.c:584:1: note: in expansion of macro 'MODULE_FUNC' 584 | MODULE_FUNC(amp) { return ms[0]*ms[1]; } | ^~~~~~~~~~~ -pattern.c:657:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 657 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:657:83: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 657 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:658:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 658 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:658:104: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 658 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:659:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 659 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:659:102: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 659 | glVertex2f(PIANOROLL_X+(piano_porta_drag+piano_porta_drag_len)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:660:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 660 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:660:81: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 660 | glVertex2f(1+PIANOROLL_X+piano_porta_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:667:7: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 667 | n=pattdata[cpatt][piano_start+piano_drag]; - | ^~~~~~~~ -pattern.c:670:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 670 | glVertex2f(1+PIANOROLL_X+piano_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:670:75: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 670 | glVertex2f(1+PIANOROLL_X+piano_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:671:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 671 | glVertex2f(PIANOROLL_X+(piano_dragto+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ -pattern.c:671:79: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 671 | glVertex2f(PIANOROLL_X+(piano_dragto+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-1-(n-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ modules.c: At top level: modules.h:29:39: warning: no previous prototype for 'modfunc_att' [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) @@ -3678,29 +2887,40 @@ modules.c:585:1: note: in expansion of macro 'MODULE_FUNC' 585 | MODULE_FUNC(att) { return ms[0]* *mod; } | ^~~~~~~~~~~ -pattern.c:672:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 672 | glVertex2f(PIANOROLL_X+(piano_dragto+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ modules.c: In function 'modfunc_att': +fileops.c:397:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'unsigned int' may change value [-Wconversion] + 397 | m=fwrite(filedata, sizeof(char), dsize+8, f); + | ^~~~~~ modules.h:29:67: warning: unused parameter 'v' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~~~~~~~~~^ modules.c:585:1: note: in expansion of macro 'MODULE_FUNC' 585 | MODULE_FUNC(att) { return ms[0]* *mod; } | ^~~~~~~~~~~ -pattern.c:672:77: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 672 | glVertex2f(PIANOROLL_X+(piano_dragto+1)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ modules.h:29:88: warning: unused parameter 'data' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~^~~~ modules.c:585:1: note: in expansion of macro 'MODULE_FUNC' 585 | MODULE_FUNC(att) { return ms[0]* *mod; } | ^~~~~~~~~~~ +In file included from /usr/include/string.h:535, + from /usr/include/freetype2/freetype/config/ftstdlib.h:88, + from /usr/include/freetype2/freetype/config/ftconfig.h:41, + from /usr/include/freetype2/freetype/freetype.h:24, + from font.h:18, + from widgets.h:22: +In function 'strncat', + inlined from 'filedialog_open' at filedialog.c:24:3: +fileops.c: In function 'save_chunk_kpat': modules.c: At top level: -pattern.c:673:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 673 | glVertex2f(1+PIANOROLL_X+piano_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ +/usr/include/x86_64-linux-gnu/bits/string_fortified.h:138:10: warning: '__builtin___strncat_chk' specified bound 255 equals destination size [-Wstringop-overflow=] + 138 | return __builtin___strncat_chk (__dest, __src, __len, + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 139 | __glibc_objsize (__dest)); + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +fileops.c:411:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 411 | r=fwrite("KPAT", sizeof(char), 4, f); + | ^~~~~~ modules.h:29:39: warning: no previous prototype for 'modfunc_mixer' [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ @@ -3708,21 +2928,27 @@ 586 | MODULE_FUNC(mixer) { return ms[0]+ms[1]+ms[2]+ms[3]; } | ^~~~~~~~~~~ modules.c: In function 'modfunc_mixer': +fileops.c:413:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 413 | r=fwrite(&chunklen, sizeof(unsigned int), 1, f); + | ^~~~~~ modules.h:29:67: warning: unused parameter 'v' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~~~~~~~~~^ modules.c:586:1: note: in expansion of macro 'MODULE_FUNC' 586 | MODULE_FUNC(mixer) { return ms[0]+ms[1]+ms[2]+ms[3]; } | ^~~~~~~~~~~ -pattern.c:673:73: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 673 | glVertex2f(1+PIANOROLL_X+piano_drag*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(n-coct*12+1)*PIANOROLL_CELLHEIGHT); - | ^ +fileops.c:415:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 415 | r=fwrite(&pattlen[patt], sizeof(unsigned int), 1, f); + | ^~~~~~ modules.h:29:77: warning: unused parameter 'mod' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~~^~~ modules.c:586:1: note: in expansion of macro 'MODULE_FUNC' 586 | MODULE_FUNC(mixer) { return ms[0]+ms[1]+ms[2]+ms[3]; } | ^~~~~~~~~~~ +fileops.c:417:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 417 | r=fwrite(&pattdata[patt], sizeof(unsigned int), pattlen[patt]*16, f); + | ^~~~~~ modules.h:29:88: warning: unused parameter 'data' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~^~~~ @@ -3730,43 +2956,109 @@ 586 | MODULE_FUNC(mixer) { return ms[0]+ms[1]+ms[2]+ms[3]; } | ^~~~~~~~~~~ modules.c: At top level: -pattern.c:683:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 683 | PIANOROLL_Y-1-(kpkeydown-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ +fileops.c: In function 'save_chunk_kseq': +fileops.c:429:12: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 429 | chunklen=12 + 4*seqch + 4*seqch*seqsonglen*4; + | ^~ modules.h:29:39: warning: no previous prototype for 'modfunc_lpf24' [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:590:1: note: in expansion of macro 'MODULE_FUNC' 590 | MODULE_FUNC(lpf24) { // 24db/oct four-pole low pass | ^~~~~~~~~~~ -pattern.c:685:49: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 685 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, - | ^ -pattern.c:685:77: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 685 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, - | ^ -pattern.c:685:33: warning: conversion from 'unsigned int' to 'float' may change value [-Wconversion] - 685 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, - | ^ -pattern.c:686:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 686 | PIANOROLL_Y-1-(kpkeydown-coct*12)*PIANOROLL_CELLHEIGHT); - | ^ +fileops.c:430:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 430 | r=fwrite("KSEQ", sizeof(char), 4, f); + | ^~~~~~ +fileops.c:431:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 431 | r=fwrite(&chunklen, sizeof(unsigned int), 1, f); + | ^~~~~~ +fileops.c:433:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 433 | r=fwrite(&seqch, sizeof(unsigned int), 1, f); + | ^~~~~~ +fileops.c:434:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 434 | r=fwrite(&seqsonglen, sizeof(unsigned int), 1, f); + | ^~~~~~ +fileops.c:435:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 435 | r=fwrite(&bpm, sizeof(unsigned int), 1, f); + | ^~~~~~ modules.c: In function 'modfunc_lpf24': +fileops.c:438:45: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] + 438 | r=fwrite(seq_synth, sizeof(unsigned int), seqch, f); + | ^~~~~ modules.c:613:19: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 613 | return mod_ddata[3]; //out4; | ^ -pattern.c:688:49: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 688 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, +fileops.c:438:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] + 438 | r=fwrite(seq_synth, sizeof(unsigned int), seqch, f); + | ^~~~~~ +fileops.c:441:73: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] + 441 | for(i=0;i>", patt_ui[B_NEXT]); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ modules.c:700:19: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 700 | mod_fdata[i]-=floor(mod_fdata[i]); | ^~~~~ -pattern.c:709:37: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 709 | draw_button(98, DS_HEIGHT-14, 16, "<<", patt_ui[B_SHORTER]); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ modules.c:704:7: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 704 | f = 2*sin(3.14159 * m_pitch); // cutoff in [0.0, 1.0] | ^ -pattern.c:712:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 712 | draw_button(180, DS_HEIGHT-14, 16, ">>", patt_ui[B_LONGER]); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ modules.c:706:5: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 706 | r=sqrt(q); | ^~~~ -pattern.c:714:41: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 714 | draw_button(12, PIANOROLL_Y+15.5, 16, "DN", patt_ui[B_OCTDN]); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ modules.h:29:67: warning: unused parameter 'v' [-Wunused-parameter] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ~~~~~~~~~~~~~~^ modules.c:684:1: note: in expansion of macro 'MODULE_FUNC' 684 | MODULE_FUNC(supersaw) { | ^~~~~~~~~~~ -pattern.c:715:41: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 715 | draw_button(32, PIANOROLL_Y+15.5, 16, "UP", patt_ui[B_OCTUP]); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -sequencer.c:663:23: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 663 | dialog_open(&sequencer_draw_pattern, &sequencer_pattern_hover, &sequencer_pattern_click); - | ^~~~~~~~~~~~~~~~~~~~~~~ -dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~ -pattern.c:717:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 717 | draw_button(214, DS_HEIGHT-14, 16, "<<", patt_ui[B_PREVSYN]); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -sequencer.c:663:48: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 663 | dialog_open(&sequencer_draw_pattern, &sequencer_pattern_hover, &sequencer_pattern_click); - | ^~~~~~~~~~~~~~~~~~~~~~~~ -dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ -sequencer.c:663:74: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 663 | dialog_open(&sequencer_draw_pattern, &sequencer_pattern_hover, &sequencer_pattern_click); - | ^~~~~~~~~~~~~~~~~~~~~~~~ -dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ -pattern.c:720:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 720 | draw_button(430, DS_HEIGHT-14, 16, ">>", patt_ui[B_NEXTSYN]); - | ^~~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -sequencer.c:664:31: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] - 664 | dialog_bindkeyboard(&sequencer_pattern_keyboard); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ -dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' - 23 | void dialog_bindkeyboard(void *kbfunc); - | ~~~~~~^~~~~~ -pattern.c:722:17: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 722 | ticks=playpos / (OUTPUTFREQ/(bpm*256/60)); - | ^ -pattern.c:722:9: warning: conversion to 'long int' from 'long unsigned int' may change the sign of the result [-Wsign-conversion] - 722 | ticks=playpos / (OUTPUTFREQ/(bpm*256/60)); - | ^~~~~~~ +modules.h:29:77: warning: unused parameter 'mod' [-Wunused-parameter] + 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) + | ~~~~~~~^~~ +modules.c:684:1: note: in expansion of macro 'MODULE_FUNC' + 684 | MODULE_FUNC(supersaw) { + | ^~~~~~~~~~~ +shader.c: In function 'shader_init': +shader.c:75:5: warning: '__builtin_strncpy' output may be truncated copying 511 bytes from a string of length 511 [-Wstringop-truncation] + 75 | strncpy(fullpath, respath, 511); + | ^ +filedialog.c: In function 'filedialog_draw': +filedialog.c:126:7: warning: '__builtin_strncpy' specified bound 255 equals destination size [-Wstringop-truncation] + 126 | strncpy(tmps, strrchr(fd->g.gl_pathv[i], '/')+1, 255); + | ^ +filedialog.c:126:7: warning: '__builtin_strncpy' specified bound 255 equals destination size [-Wstringop-truncation] +filedialog.c:114:7: warning: '__builtin___strncpy_chk' specified bound depends on the length of the source argument [-Wstringop-truncation] + 114 | strncpy(ttmps, fd->g.gl_pathv[i], strlen(fd->g.gl_pathv[i])-1); + | ^ +filedialog.c:114:41: note: length computed here + 114 | strncpy(ttmps, fd->g.gl_pathv[i], strlen(fd->g.gl_pathv[i])-1); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +filedialog.c:116:7: warning: '__builtin_strncpy' specified bound 255 equals destination size [-Wstringop-truncation] + 116 | strncpy(tmps, rindex(ttmps, '/')+1, 255); + | ^ +In file included from patch.h:20, + from patch.c:13: +modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 152 | void calc_supersaw_tables(); + | ^~~~ +In file included from synthesizer.h:24, + from synthesizer.c:13: +audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 56 | int audio_exportwav(); //char *filename); + | ^~~ +In file included from sequencer.h:18, + from sequencer.c:13: +audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 56 | int audio_exportwav(); //char *filename); + | ^~~ +font.c: In function 'font_init': +font.c:83:5: warning: '__builtin_strncpy' output may be truncated copying 511 bytes from a string of length 511 [-Wstringop-truncation] + 83 | strncpy(fullpath, respath, 511); + | ^ +font.c:84:5: warning: '__builtin___strncat_chk' output may be truncated copying 511 bytes from a string of length 2039 [-Wstringop-truncation] + 84 | strncat(fullpath, fontfile[i], 511); + | ^ +In file included from buffermm.h:16, + from synthesizer.h:25: +modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 152 | void calc_supersaw_tables(); + | ^~~~ +In file included from buffermm.h:16, + from sequencer.h:19: +modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 152 | void calc_supersaw_tables(); + | ^~~~ +In file included from synthesizer.h:29, + from buffermm.h:18: +dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 16 | int dotfile_load(); + | ^~~ +dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 17 | int dotfile_save(); + | ^~~ +synthesizer.h:84:6: warning: redundant redeclaration of 'synth_stackify' [-Wredundant-decls] + 84 | void synth_stackify(int syn); + | ^~~~~~~~~~~~~~ +In file included from synthesizer.h:31: +fileops.h:62:6: note: previous declaration of 'synth_stackify' with type 'void(int)' + 62 | void synth_stackify(int syn); + | ^~~~~~~~~~~~~~ +synthesizer.h:85:5: warning: redundant redeclaration of 'synth_trace' [-Wredundant-decls] + 85 | int synth_trace(int syn, int pm, int fifo); + | ^~~~~~~~~~~ +fileops.h:63:5: note: previous declaration of 'synth_trace' with type 'int(int, int, int)' + 63 | int synth_trace(int syn, int pm, int top); + | ^~~~~~~~~~~ +buffermm.c: In function 'kmm_alloc': +buffermm.c:97:69: warning: format '%d' expects argument of type 'int', but argument 3 has type 'long unsigned int' [-Wformat=] + 97 | printf("kmm: module data buffer allocated from %08lx - len %d (%d bytes), v %d s %d mi %d mt %d\n", + | ~^ + | | + | int + | %ld + 98 | (unsigned long)buffer, len, len*sizeof(u32), voice,synth,module,modtype); + | ~~~ + | | + | long unsigned int +buffermm.c:97:73: warning: format '%d' expects argument of type 'int', but argument 4 has type 'long unsigned int' [-Wformat=] + 97 | printf("kmm: module data buffer allocated from %08lx - len %d (%d bytes), v %d s %d mi %d mt %d\n", + | ~^ + | | + | int + | %ld + 98 | (unsigned long)buffer, len, len*sizeof(u32), voice,synth,module,modtype); + | ~~~~~~~~~~~~~~~ + | | + | long unsigned int +In file included from synthesizer.h:24, + from patch.h:21: +audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 56 | int audio_exportwav(); //char *filename); + | ^~~ In file included from synthesizer.h:29: dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] 16 | int dotfile_load(); @@ -4146,67 +3294,6 @@ dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] 17 | int dotfile_save(); | ^~~ -sequencer.c: In function 'sequencer_keyboard': -sequencer.c:706:30: warning: passing argument 1 of 'dotfile_getvalue' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 706 | songdir=dotfile_getvalue("songFileDir"); - | ^~~~~~~~~~~~~ -dotfile.h:18:30: note: expected 'char *' but argument is of type 'const char *' - 18 | char *dotfile_getvalue(char *key); - | ~~~~~~^~~ -pattern.c:730:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 730 | draw_button(555, DS_HEIGHT-14, 16, "X", patt_ui[B_PATTCLEAR]); - | ^~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -sequencer.c:707:39: warning: passing argument 2 of 'filedialog_open' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 707 | filedialog_open(&songfd[FD_SAVE], "ksong", songdir); - | ^~~~~~~ -filedialog.h:58:44: note: expected 'char *' but argument is of type 'const char *' - 58 | void filedialog_open(filedialog *fd, char *ext, char *path); - | ~~~~~~^~~ -pattern.c:732:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 732 | draw_button(622, DS_HEIGHT-14, 16, "C", patt_ui[B_COPY]); - | ^~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -sequencer.c:709:17: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 709 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); - | ^~~~~~~~~~~~~~~~~~~~ -dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~ -pattern.c:733:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 733 | draw_button(644, DS_HEIGHT-14, 16, "V", patt_ui[B_PASTE]); - | ^~~ -widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' - 37 | void draw_button(float x, float y, float size, char *label, int type); - | ~~~~~~^~~~~ -sequencer.c:709:39: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 709 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); - | ^~~~~~~~~~~~~~~~~~~~~ -dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ -sequencer.c:709:62: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 709 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); - | ^~~~~~~~~~~~~~~~~~~~~ -dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ -sequencer.c:710:25: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] - 710 | dialog_bindkeyboard(&sequencer_file_keyboard); - | ^~~~~~~~~~~~~~~~~~~~~~~~ -dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' - 23 | void dialog_bindkeyboard(void *kbfunc); - | ~~~~~~^~~~~~ -sequencer.c:711:21: warning: ISO C forbids passing argument 1 of 'dialog_binddrag' between function pointer and 'void *' [-Wpedantic] - 711 | dialog_binddrag(&sequencer_file_drag); - | ^~~~~~~~~~~~~~~~~~~~ -dialog.h:31:28: note: expected 'void *' but argument is of type 'void (*)(int, int)' - 31 | void dialog_binddrag(void *dragfunc); - | ~~~~~~^~~~~~~~ synthesizer.h:84:6: warning: redundant redeclaration of 'synth_stackify' [-Wredundant-decls] 84 | void synth_stackify(int syn); | ^~~~~~~~~~~~~~ @@ -4220,32 +3307,251 @@ fileops.h:63:5: note: previous declaration of 'synth_trace' with type 'int(int, int, int)' 63 | int synth_trace(int syn, int pm, int top); | ^~~~~~~~~~~ -main.c: In function 'audio_playback': -main.c:222:7: warning: function might be candidate for attribute 'noreturn' [-Wsuggest-attribute=noreturn] - 222 | void *audio_playback(void *param) - | ^~~~~~~~~~~~~~ -main.c: In function 'audio_renderer': -main.c:233:7: warning: function might be candidate for attribute 'noreturn' [-Wsuggest-attribute=noreturn] - 233 | void *audio_renderer(void *param) - | ^~~~~~~~~~~~~~ -sequencer.c:716:30: warning: passing argument 1 of 'dotfile_getvalue' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 716 | songdir=dotfile_getvalue("songFileDir"); - | ^~~~~~~~~~~~~ -dotfile.h:18:30: note: expected 'char *' but argument is of type 'const char *' - 18 | char *dotfile_getvalue(char *key); - | ~~~~~~^~~ -modules.h:29:77: warning: unused parameter 'mod' [-Wunused-parameter] - 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) - | ~~~~~~~^~~ -modules.c:684:1: note: in expansion of macro 'MODULE_FUNC' - 684 | MODULE_FUNC(supersaw) { - | ^~~~~~~~~~~ -sequencer.c:717:39: warning: passing argument 2 of 'filedialog_open' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 717 | filedialog_open(&songfd[FD_LOAD], "ksong", songdir); - | ^~~~~~~ -filedialog.h:58:44: note: expected 'char *' but argument is of type 'const char *' - 58 | void filedialog_open(filedialog *fd, char *ext, char *path); - | ~~~~~~^~~ +filedialog.c: In function 'filedialog_click': +patch.c: In function 'patch_init': +patch.c:96:6: warning: old-style function definition [-Wold-style-definition] + 96 | void patch_init() + | ^~~~~~~~~~ +patch.c: In function 'patch_mouse_hover': +patch.c:130:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 130 | patch_ui[B_PREV]=hovertest_box(x, y, 310, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:130:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 130 | patch_ui[B_PREV]=hovertest_box(x, y, 310, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:131:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 131 | patch_ui[B_NEXT]=hovertest_box(x, y, 362, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:131:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 131 | patch_ui[B_NEXT]=hovertest_box(x, y, 362, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:132:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 132 | patch_ui[B_PREVSYN]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:132:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 132 | patch_ui[B_PREVSYN]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:133:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 133 | patch_ui[B_NEXTSYN]=hovertest_box(x, y, 230, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:133:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 133 | patch_ui[B_NEXTSYN]=hovertest_box(x, y, 230, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:135:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 135 | patch_ui[B_OCTDN]=hovertest_box(x, y, 17, 520-12, 16, 16); + | ^ +patch.c:135:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 135 | patch_ui[B_OCTDN]=hovertest_box(x, y, 17, 520-12, 16, 16); + | ^ +patch.c:136:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 136 | patch_ui[B_OCTUP]=hovertest_box(x, y, DS_WIDTH-17, 520-12, 16, 16); + | ^ +patch.c:136:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 136 | patch_ui[B_OCTUP]=hovertest_box(x, y, DS_WIDTH-17, 520-12, 16, 16); + | ^ +patch.c:139:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 139 | patch_ui[B_COPY]=hovertest_box(x, y, 622, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:139:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 139 | patch_ui[B_COPY]=hovertest_box(x, y, 622, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:140:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 140 | patch_ui[B_PASTE]=hovertest_box(x, y, 644, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:140:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 140 | patch_ui[B_PASTE]=hovertest_box(x, y, 644, DS_HEIGHT-14, 16, 16); + | ^ +patch.c:145:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 145 | patch_ui[B_PATCHNAME]|=hovertest_box(x, y, 472, DS_HEIGHT-14, 16, 180); + | ^ +patch.c:145:43: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 145 | patch_ui[B_PATCHNAME]|=hovertest_box(x, y, 472, DS_HEIGHT-14, 16, 180); + | ^ +In file included from synthesizer.h:29: +dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 16 | int dotfile_load(); + | ^~~ +dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 17 | int dotfile_save(); + | ^~~ +filedialog.c:203:9: warning: '__builtin___strncpy_chk' specified bound depends on the length of the source argument [-Wstringop-truncation] + 203 | strncpy(ttmps, fd->g.gl_pathv[fd->sliderpos+fd->listhover], strlen(fd->g.gl_pathv[fd->sliderpos+fd->listhover])-1); + | ^ +filedialog.c:203:69: note: length computed here + 203 | strncpy(ttmps, fd->g.gl_pathv[fd->sliderpos+fd->listhover], strlen(fd->g.gl_pathv[fd->sliderpos+fd->listhover])-1); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +filedialog.c:205:9: warning: '__builtin_strncpy' specified bound 255 equals destination size [-Wstringop-truncation] + 205 | strncpy(tmps, rindex(ttmps, '/')+1, 255); + | ^ +patch.c:174:7: warning: switch missing default case [-Wswitch-default] + 174 | switch (key) { + | ^~~~~~ +filedialog.c:226:9: warning: '__builtin_strncpy' specified bound 255 equals destination size [-Wstringop-truncation] + 226 | strncpy(fd->fname, strrchr(fd->g.gl_pathv[fd->sliderpos+fd->listhover], '/')+1, 255); + | ^ +patch.c: In function 'patch_mouse_drag': +patch.c:201:27: warning: unused parameter 'x' [-Wunused-parameter] + 201 | void patch_mouse_drag(int x, int y) + | ~~~~^ +filedialog.c:180:7: warning: '__builtin___strncat_chk' specified bound 512 equals destination size [-Wstringop-truncation] + 180 | strncat(fd->fullpath, fd->fmask+1, 512); + | ^ +patch.c:201:34: warning: unused parameter 'y' [-Wunused-parameter] + 201 | void patch_mouse_drag(int x, int y) + | ~~~~^ +patch.c: In function 'patch_mouse_click': +patch.c:217:9: warning: this 'if' clause does not guard... [-Wmisleading-indentation] + 217 | if (cpatch[csynth]>0) cpatch[csynth]--; return; + | ^~ +patch.c:217:49: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' + 217 | if (cpatch[csynth]>0) cpatch[csynth]--; return; + | ^~~~~~ +patch.c:260:22: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 260 | console_post("Patch copied to clipboard"); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from pattern.h:19, + from buffermm.h:17, + from synthesizer.h:25: +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +patch.c:273:24: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 273 | console_post("Patch pasted from clipboard"); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +patch.c:336:76: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 336 | patch_modulator_floatval=knob_float2scale(mod[csynth][mi].scale, modvalue[ csynth ][cpatch[csynth]][ mi ]); + | ~~~~~~~~~~~~~~~^~~~~~ +patch.c:341:42: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] + 341 | patch_modulator_intval=modvalue[ csynth ][cpatch[csynth]][ mi ]; + | ^~~~~~~~ +patch.c:334:15: warning: switch missing default case [-Wswitch-default] + 334 | switch(modModulatorTypes[mod[csynth][mi].type]) { + | ^~~~~~ +patch.c:344:27: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 344 | dialog_open(&patch_draw_modulator, &patch_modulator_hover, &patch_modulator_click); + | ^~~~~~~~~~~~~~~~~~~~~ +synthesizer.h:84:6: warning: redundant redeclaration of 'synth_stackify' [-Wredundant-decls] + 84 | void synth_stackify(int syn); + | ^~~~~~~~~~~~~~ +In file included from synthesizer.h:31: +fileops.h:62:6: note: previous declaration of 'synth_stackify' with type 'void(int)' + 62 | void synth_stackify(int syn); + | ^~~~~~~~~~~~~~ +synthesizer.h:85:5: warning: redundant redeclaration of 'synth_trace' [-Wredundant-decls] + 85 | int synth_trace(int syn, int pm, int fifo); + | ^~~~~~~~~~~ +fileops.h:63:5: note: previous declaration of 'synth_trace' with type 'int(int, int, int)' + 63 | int synth_trace(int syn, int pm, int top); + | ^~~~~~~~~~~ +In file included from synthesizer.h:28: +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +patch.c:344:50: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 344 | dialog_open(&patch_draw_modulator, &patch_modulator_hover, &patch_modulator_click); + | ^~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +patch.c:344:74: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 344 | dialog_open(&patch_draw_modulator, &patch_modulator_hover, &patch_modulator_click); + | ^~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +In function 'strncat', + inlined from 'filedialog_click' at filedialog.c:177:5: +/usr/include/x86_64-linux-gnu/bits/string_fortified.h:138:10: warning: '__builtin___strncat_chk' specified bound 512 equals destination size [-Wstringop-overflow=] + 138 | return __builtin___strncat_chk (__dest, __src, __len, + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 139 | __glibc_objsize (__dest)); + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +patch.c:345:35: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 345 | dialog_bindkeyboard(&patch_modulator_keyboard); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +In function 'strncat', + inlined from 'filedialog_click' at filedialog.c:180:7: +/usr/include/x86_64-linux-gnu/bits/string_fortified.h:138:10: warning: '__builtin___strncat_chk' specified bound 512 equals destination size [-Wstringop-overflow=] + 138 | return __builtin___strncat_chk (__dest, __src, __len, + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 139 | __glibc_objsize (__dest)); + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +patch.c:346:34: warning: ISO C forbids passing argument 1 of 'dialog_bindspecial' between function pointer and 'void *' [-Wpedantic] + 346 | dialog_bindspecial(&patch_modulator_special); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:24:31: note: expected 'void *' but argument is of type 'void (*)(int, int, int)' + 24 | void dialog_bindspecial(void *specialfunc); + | ~~~~~~^~~~~~~~~~~ +patch.c:351:24: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 351 | console_post("No settings for this module!"); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +patch.c: In function 'patch_keyboard': +patch.c:378:3: warning: switch missing default case [-Wswitch-default] + 378 | switch (key) { + | ^~~~~~ +patch.c:367:44: warning: unused parameter 'x' [-Wunused-parameter] + 367 | void patch_keyboard(unsigned char key, int x, int y) + | ~~~~^ +patch.c:367:51: warning: unused parameter 'y' [-Wunused-parameter] + 367 | void patch_keyboard(unsigned char key, int x, int y) + | ~~~~^ +patch.c: In function 'patch_keyboardup': +patch.c:401:46: warning: unused parameter 'x' [-Wunused-parameter] + 401 | void patch_keyboardup(unsigned char key, int x, int y) + | ~~~~^ +patch.c:401:53: warning: unused parameter 'y' [-Wunused-parameter] + 401 | void patch_keyboardup(unsigned char key, int x, int y) + | ~~~~^ +patch.c: In function 'patch_specialkey': +patch.c:419:3: warning: switch missing default case [-Wswitch-default] + 419 | switch(key) + | ^~~~~~ +patch.c:417:46: warning: unused parameter 'x' [-Wunused-parameter] + 417 | void patch_specialkey(unsigned char key, int x, int y) + | ~~~~^ +patch.c:417:53: warning: unused parameter 'y' [-Wunused-parameter] + 417 | void patch_specialkey(unsigned char key, int x, int y) + | ~~~~^ +patch.c: In function 'patch_draw': +patch.c:460:19: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 460 | glVertex2f(x+16, 8+m*16-yd); + | ~^~~ +patch.c:460:31: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 460 | glVertex2f(x+16, 8+m*16-yd); + | ~~~~~~^~~ +patch.c:461:19: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 461 | glVertex2f(x+380, 8+m*16-yd); + | ~^~~~ +patch.c:461:31: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 461 | glVertex2f(x+380, 8+m*16-yd); + | ~~~~~~^~~ +patch.c:462:19: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 462 | glVertex2f(x+380, 24+m*16-yd); + | ~^~~~ +patch.c:462:32: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 462 | glVertex2f(x+380, 24+m*16-yd); + | ~~~~~~~^~~ +patch.c:463:19: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 463 | glVertex2f(x+16, 24+m*16-yd); + | ~^~~ +patch.c:463:32: warning: conversion from 'int' to 'GLfloat' {aka 'float'} may change value [-Wconversion] + 463 | glVertex2f(x+16, 24+m*16-yd); + | ~~~~~~~^~~ +patch.c:467:51: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 467 | sprintf(tmps, "%02d", mi); render_text(tmps, x+20, 20+mm*16-yd, 2, 0xff505050, 0); + | ~^~~ +patch.c:467:64: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 467 | sprintf(tmps, "%02d", mi); render_text(tmps, x+20, 20+mm*16-yd, 2, 0xff505050, 0); + | ~~~~~~~~^~~ synthesizer.c: In function 'hovertest_output': synthesizer.c:178:11: warning: conversion from 'int' to 'float' may change value [-Wconversion] 178 | xd=x-(list[m].x+MODULE_HALF); @@ -4253,12 +3559,9 @@ synthesizer.c:179:11: warning: conversion from 'int' to 'float' may change value [-Wconversion] 179 | yd=y-(list[m].y+OUTPUT_OFFSET); | ^ -sequencer.c:719:17: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 719 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); - | ^~~~~~~~~~~~~~~~~~~~ -dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~ +patch.c:468:81: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 468 | sprintf(tmps, "%s", modTypeNames[mod[csynth][mi].type]); render_text(tmps, x+44, 20+mm*16-yd, 2, 0xffc0c0c0, 0); + | ~^~~ synthesizer.c:180:9: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 180 | d=sqrt(xd*xd+yd*yd); | ^~~~ @@ -4269,42 +3572,61 @@ synthesizer.c:52:13: note: shadowed declaration is here 52 | synthmodule mod[MAX_SYNTH][MAX_MODULES]; | ^~~ -sequencer.c:719:39: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 719 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); - | ^~~~~~~~~~~~~~~~~~~~~ -dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ +patch.c:468:94: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 468 | sprintf(tmps, "%s", modTypeNames[mod[csynth][mi].type]); render_text(tmps, x+44, 20+mm*16-yd, 2, 0xffc0c0c0, 0); + | ~~~~~~~~^~~ synthesizer.c:196:10: warning: conversion from 'int' to 'float' may change value [-Wconversion] 196 | xd=x - (mod->x + node_xoffset[ modInputCount[mod->type] ][ n ]); | ^ synthesizer.c:197:10: warning: conversion from 'int' to 'float' may change value [-Wconversion] 197 | yd=y - (mod->y + node_yoffset[ modInputCount[mod->type] ][ n ]); | ^ -sequencer.c:719:62: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] - 719 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); - | ^~~~~~~~~~~~~~~~~~~~~ -shader.c:43:8: warning: no previous prototype for 'loadshader' [-Wmissing-prototypes] - 43 | GLuint loadshader(char *fname, GLuint type) - | ^~~~~~~~~~ -dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' - 22 | void dialog_open(void *draw, void *hover, void *click); - | ~~~~~~^~~~~ synthesizer.c:198:7: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] 198 | d=sqrt(xd*xd + yd*yd); | ^~~~ -sequencer.c:720:25: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] - 720 | dialog_bindkeyboard(&sequencer_file_keyboard); - | ^~~~~~~~~~~~~~~~~~~~~~~~ -dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' - 23 | void dialog_bindkeyboard(void *kbfunc); - | ~~~~~~^~~~~~ -sequencer.c:721:21: warning: ISO C forbids passing argument 1 of 'dialog_binddrag' between function pointer and 'void *' [-Wpedantic] - 721 | dialog_binddrag(&sequencer_file_drag); - | ^~~~~~~~~~~~~~~~~~~~ -dialog.h:31:28: note: expected 'void *' but argument is of type 'void (*)(int, int)' - 31 | void dialog_binddrag(void *dragfunc); - | ~~~~~~^~~~~~~~ +patch.c:476:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 476 | render_text(tmps, x+110, 20+mm*16-yd, 2, 0xff808080, 0); + | ~^~~~ +patch.c:476:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 476 | render_text(tmps, x+110, 20+mm*16-yd, 2, 0xff808080, 0); + | ~~~~~~~~^~~ +patch.c:483:45: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 483 | f=knob_float2scale(mod[csynth][mi].scale, modvalue[ csynth ][ cpatch[csynth] ][ mi ]); + | ~~~~~~~~~~~~~~~^~~~~~ +patch.c:478:5: warning: switch missing default case [-Wswitch-default] + 478 | switch(modModulatorTypes[mod[csynth][mi].type]) + | ^~~~~~ +patch.c:496:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 496 | render_text(tmps, x+250, 20+mm*16-yd, 2, 0xffc0c0c0, 0); + | ~^~~~ +patch.c:496:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 496 | render_text(tmps, x+250, 20+mm*16-yd, 2, 0xffc0c0c0, 0); + | ~~~~~~~~^~~ +patch.c:506:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 506 | draw_kbhoct(PIANO_LEFT+m*16*7, PIANO_TOP, 16, 70, m, cpkey, rkdown, &pianokeys[(m-coct)*12]); + | ^ +patch.c:508:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 508 | draw_kbhoct(PIANO_LEFT+m*16*7, PIANO_TOP, 16, 70, m, cpkey, rkdown, NULL); + | ^ +patch.c:513:31: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 513 | draw_button(17, 520-12, 16, "-", patch_ui[B_OCTDN]); + | ^~~ +In file included from pattern.h:22: +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +patch.c:514:40: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 514 | draw_button(DS_WIDTH-17, 520-12, 16, "+", patch_ui[B_OCTUP]); + | ^~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +patch.c:519:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 519 | draw_button(622, DS_HEIGHT-14, 16, "C", patch_ui[B_COPY]); + | ^~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ synthesizer.c: At top level: synthesizer.c:240:6: warning: no previous prototype for 'synth_open_addmodule' [-Wmissing-prototypes] 240 | void synth_open_addmodule(void) @@ -4313,18 +3635,12 @@ synthesizer.c:252:21: warning: conversion from 'int' to 'float' may change value [-Wconversion] 252 | tmpmod[m].x=(DS_WIDTH/2)-222 + m*74; | ^ -sequencer.c:736:31: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 736 | n=i+seq_repeat[j][i]*pattlen[seq_pattern[j][i]]; - | ^ synthesizer.c:255:21: warning: conversion from 'int' to 'float' may change value [-Wconversion] 255 | tmpmod[m].x=(DS_WIDTH/2)-222 + (m-7)*74; | ^ synthesizer.c:259:21: warning: conversion from 'int' to 'float' may change value [-Wconversion] 259 | tmpmod[m].x=(DS_WIDTH/2)-222 + (m-14)*74; | ^ -sequencer.c:736:14: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 736 | n=i+seq_repeat[j][i]*pattlen[seq_pattern[j][i]]; - | ^ synthesizer.c:266:15: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 266 | dialog_open(&synth_draw_addmodule, &synth_addmodule_hover, synth_addmodule_click); | ^~~~~~~~~~~~~~~~~~~~~ @@ -4332,9 +3648,6 @@ dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~ -sequencer.c:736:13: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 736 | n=i+seq_repeat[j][i]*pattlen[seq_pattern[j][i]]; - | ^ synthesizer.c:266:38: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 266 | dialog_open(&synth_draw_addmodule, &synth_addmodule_hover, synth_addmodule_click); | ^~~~~~~~~~~~~~~~~~~~~~ @@ -4350,22 +3663,13 @@ synthesizer.c:267:23: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] 267 | dialog_bindkeyboard(&synth_addmodule_keyboard); | ^~~~~~~~~~~~~~~~~~~~~~~~~ -sequencer.c:690:3: warning: switch missing default case [-Wswitch-default] - 690 | switch (key) { - | ^~~~~~ dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' 23 | void dialog_bindkeyboard(void *kbfunc); | ~~~~~~^~~~~~ -sequencer.c:682:48: warning: unused parameter 'x' [-Wunused-parameter] - 682 | void sequencer_keyboard(unsigned char key, int x, int y) - | ~~~~^ synthesizer.c: In function 'synth_mouse_hover': synthesizer.c:285:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] 285 | synth_ui[B_PREV]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); | ^ -sequencer.c:682:55: warning: unused parameter 'y' [-Wunused-parameter] - 682 | void sequencer_keyboard(unsigned char key, int x, int y) - | ~~~~^ synthesizer.c:285:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] 285 | synth_ui[B_PREV]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); | ^ @@ -4375,19 +3679,12 @@ synthesizer.c:286:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] 286 | synth_ui[B_NEXT]=hovertest_box(x, y, 64, DS_HEIGHT-14, 16, 16); | ^ -sequencer.c: In function 'sequencer_draw': -sequencer.c:759:44: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 759 | glVertex2f(SEQUENCER_X, SEQUENCER_Y+(j*SEQUENCER_CELLHEIGHT)); - | ^ synthesizer.c:287:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] 287 | synth_ui[B_ADD]=hovertest_box (x, y, 310, DS_HEIGHT-14, 16, 16); | ^ synthesizer.c:287:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] 287 | synth_ui[B_ADD]=hovertest_box (x, y, 310, DS_HEIGHT-14, 16, 16); | ^ -sequencer.c:760:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 760 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(j*SEQUENCER_CELLHEIGHT)); - | ^ synthesizer.c:288:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] 288 | synth_ui[B_SAVE]=hovertest_box(x, y, 350, DS_HEIGHT-14, 16, 16); | ^ @@ -4397,9 +3694,6 @@ synthesizer.c:289:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] 289 | synth_ui[B_LOAD]=hovertest_box(x, y, 372, DS_HEIGHT-14, 16, 16); | ^ -sequencer.c:760:83: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 760 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(j*SEQUENCER_CELLHEIGHT)); - | ^ synthesizer.c:289:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] 289 | synth_ui[B_LOAD]=hovertest_box(x, y, 372, DS_HEIGHT-14, 16, 16); | ^ @@ -4409,42 +3703,85 @@ synthesizer.c:290:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] 290 | synth_ui[B_CLEAR]=hovertest_box(x, y, 394, DS_HEIGHT-14, 16, 16) | (synth_ui[B_CLEAR]&8); | ^ -sequencer.c:768:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 768 | glVertex2f(SEQUENCER_X, SEQUENCER_Y+((seqch+2)*SEQUENCER_CELLHEIGHT)); - | ^ synthesizer.c:294:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] 294 | synth_ui[B_NAME]|=hovertest_box(x, y, 190, DS_HEIGHT-14, 16, 180); | ^ +patch.c:520:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 520 | draw_button(644, DS_HEIGHT-14, 16, "V", patch_ui[B_PASTE]); + | ^~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +patch.c:529:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 529 | draw_button(310, DS_HEIGHT-14, 16, "<<", patch_ui[B_PREV]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +patch.c:532:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 532 | draw_button(362, DS_HEIGHT-14, 16, ">>", patch_ui[B_NEXT]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +patch.c:534:37: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 534 | draw_button(14, DS_HEIGHT-14, 16, "<<", patch_ui[B_PREVSYN]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +patch.c:537:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 537 | draw_button(230, DS_HEIGHT-14, 16, ">>", patch_ui[B_NEXTSYN]); + | ^~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +patch.c: In function 'patch_draw_modulator': +patch.c:558:55: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 558 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 120, 226, "", 0); + | ^~ +widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' + 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); + | ~~~~~~^~~~~ +patch.c:568:53: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 568 | draw_button((DS_WIDTH/2)+96, (DS_HEIGHT/2)+2, 16, "+", modulator_ui[B_MOD_ADDPREC]); + | ^~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +patch.c:569:53: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 569 | draw_button((DS_WIDTH/2)-28, (DS_HEIGHT/2)+2, 16, "-", modulator_ui[B_MOD_DECPREC]); + | ^~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ synthesizer.c:294:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] 294 | synth_ui[B_NAME]|=hovertest_box(x, y, 190, DS_HEIGHT-14, 16, 180); | ^ -sequencer.c:769:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 769 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+((seqch+2)*SEQUENCER_CELLHEIGHT)); - | ^ -sequencer.c:769:81: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 769 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+((seqch+2)*SEQUENCER_CELLHEIGHT)); - | ^ +patch.c:574:42: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 574 | rf=knob_scale2float(mod[csynth][mi].scale, rf); + | ~~~~~~~~~~~~~~~^~~~~~ +patch.c:575:11: warning: assignment to 'unsigned int *' from incompatible pointer type 'long unsigned int *' [-Wincompatible-pointer-types] + 575 | fptr=(unsigned long*)(&rf); + | ^ synthesizer.c: In function 'synth_mouse_drag': -sequencer.c:770:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 770 | glVertex2f(SEQUENCER_X, SEQUENCER_Y+((seqch+3)*SEQUENCER_CELLHEIGHT)); - | ^ +patch.c:579:41: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 579 | f=knob_float2scale(mod[csynth][mi].scale, rf); + | ~~~~~~~~~~~~~~~^~~~~~ synthesizer.c:333:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] 333 | mod[csynth][moduledrag].x=x-dragoffset_x; | ^ synthesizer.c:334:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] 334 | mod[csynth][moduledrag].y=y-dragoffset_y; | ^ -sequencer.c:771:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 771 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+((seqch+3)*SEQUENCER_CELLHEIGHT)); - | ^ -main.c: In function 'cleanup': -main.c:322:6: warning: function might be candidate for attribute 'noreturn' [-Wsuggest-attribute=noreturn] - 322 | void cleanup(void) - | ^~~~~~~ -sequencer.c:771:81: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 771 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+((seqch+3)*SEQUENCER_CELLHEIGHT)); - | ^ +patch.c: In function 'patch_modulator_hover': +patch.c:596:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 596 | modulator_ui[B_MOD_ADDPREC]=hovertest_box(x, y, (DS_WIDTH/2)+96, (DS_HEIGHT/2)+2, 16, 16); + | ^ synthesizer.c: In function 'synth_mouse_click': +patch.c:596:48: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 596 | modulator_ui[B_MOD_ADDPREC]=hovertest_box(x, y, (DS_WIDTH/2)+96, (DS_HEIGHT/2)+2, 16, 16); + | ^ synthesizer.c:375:24: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 375 | console_post("Click again to clear synthesizer"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -4453,18 +3790,12 @@ console.h:23:25: note: expected 'char *' but argument is of type 'const char *' 23 | void console_post(char *msg); | ~~~~~~^~~ -sequencer.c:784:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 784 | render_text(tmps, 2.5+SEQUENCER_X+(i*SEQUENCER_CELLWIDTH), round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT)), 2, 0xffa0a0a0, 0); - | ^ -sequencer.c:784:83: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 784 | render_text(tmps, 2.5+SEQUENCER_X+(i*SEQUENCER_CELLWIDTH), round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT)), 2, 0xffa0a0a0, 0); - | ^ -In file included from synthesizer.h:24, - from patch.h:21, - from fileops.c:20: -audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 56 | int audio_exportwav(); //char *filename); - | ^~~ +patch.c:597:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 597 | modulator_ui[B_MOD_DECPREC]=hovertest_box(x, y, (DS_WIDTH/2)-28, (DS_HEIGHT/2)+2 , 16, 16); + | ^ +patch.c:597:48: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 597 | modulator_ui[B_MOD_DECPREC]=hovertest_box(x, y, (DS_WIDTH/2)-28, (DS_HEIGHT/2)+2 , 16, 16); + | ^ synthesizer.c:418:33: warning: passing argument 1 of 'dotfile_getvalue' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 418 | syndir=dotfile_getvalue("synthFileDir"); | ^~~~~~~~~~~~~~ @@ -4478,43 +3809,77 @@ filedialog.h:58:44: note: expected 'char *' but argument is of type 'const char *' 58 | void filedialog_open(filedialog *fd, char *ext, char *path); | ~~~~~~^~~ +patch.c:600:44: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 600 | modulator_ui[B_MOD_VALUE]|=hovertest_box(x, y, (DS_WIDTH/2)+34, (DS_HEIGHT/2)-20, 16, 140); + | ^ synthesizer.c:421:21: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 421 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~ dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~ +patch.c:600:47: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 600 | modulator_ui[B_MOD_VALUE]|=hovertest_box(x, y, (DS_WIDTH/2)+34, (DS_HEIGHT/2)-20, 16, 140); + | ^ synthesizer.c:421:39: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 421 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~~ dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~~ +patch.c: In function 'patch_modulator_click': synthesizer.c:421:58: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 421 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~~ dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~~ +patch.c:609:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 609 | if (state==GLUT_DOWN && !hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),120,226 )) { + | ^ synthesizer.c:422:29: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] 422 | dialog_bindkeyboard(&synth_file_keyboard); | ^~~~~~~~~~~~~~~~~~~~ dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' 23 | void dialog_bindkeyboard(void *kbfunc); | ~~~~~~^~~~~~ +patch.c:609:44: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 609 | if (state==GLUT_DOWN && !hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),120,226 )) { + | ^ +patch.c:616:50: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 616 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),120,226 )) { + | ^ +patch.c:616:52: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 616 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),120,226 )) { + | ^ +patch.c:622:45: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 622 | f=knob_scale2float(mod[csynth][mi].scale, f); + | ~~~~~~~~~~~~~~~^~~~~~ +patch.c:618:5: warning: switch missing default case [-Wswitch-default] + 618 | switch(modModulatorTypes[mod[csynth][mi].type]) { + | ^~~~~~ +patch.c:643:9: warning: this 'if' clause does not guard... [-Wmisleading-indentation] + 643 | if (modquantifier[ csynth ][cpatch[csynth]][ mi ]<32) modquantifier[ csynth ][cpatch[csynth]][ mi ]++; return; + | ^~ +patch.c:643:112: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' + 643 | if (modquantifier[ csynth ][cpatch[csynth]][ mi ]<32) modquantifier[ csynth ][cpatch[csynth]][ mi ]++; return; + | ^~~~~~ +patch.c:647:9: warning: this 'if' clause does not guard... [-Wmisleading-indentation] + 647 | if (modquantifier[ csynth ][cpatch[csynth]][ mi ]>12) modquantifier[ csynth ][cpatch[csynth]][ mi ]--; return; + | ^~ +patch.c:647:112: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' + 647 | if (modquantifier[ csynth ][cpatch[csynth]][ mi ]>12) modquantifier[ csynth ][cpatch[csynth]][ mi ]--; return; + | ^~~~~~ +patch.c: In function 'patch_modulator_special': +patch.c:674:39: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 674 | f=knob_float2scale(mod[csynth][mi].scale, modvalue[ csynth ][cpatch[csynth]][ mi ]); + | ~~~~~~~~~~~~~~~^~~~~~ synthesizer.c:423:25: warning: ISO C forbids passing argument 1 of 'dialog_binddrag' between function pointer and 'void *' [-Wpedantic] 423 | dialog_binddrag(&synth_file_drag); | ^~~~~~~~~~~~~~~~ dialog.h:31:28: note: expected 'void *' but argument is of type 'void (*)(int, int)' 31 | void dialog_binddrag(void *dragfunc); | ~~~~~~^~~~~~~~ -In file included from synthesizer.h:29: -dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 16 | int dotfile_load(); - | ^~~ -dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] - 17 | int dotfile_save(); - | ^~~ synthesizer.c:427:33: warning: passing argument 1 of 'dotfile_getvalue' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 427 | syndir=dotfile_getvalue("synthFileDir"); | ^~~~~~~~~~~~~~ @@ -4569,116 +3934,135 @@ synthesizer.c:457:22: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] 457 | dragoffset_y=y-mod[csynth][m].y; | ^ -sequencer.c:784:66: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 784 | render_text(tmps, 2.5+SEQUENCER_X+(i*SEQUENCER_CELLWIDTH), round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT)), 2, 0xffa0a0a0, 0); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -sequencer.c:789:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 789 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y)); - | ^ +patch.c:713:78: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 713 | modvalue[ csynth ][cpatch[csynth]][ mi ]=knob_scale2float(mod[csynth][mi].scale, f); + | ~~~~~~~~~~~~~~~^~~~~~ +patch.c:662:43: warning: unused parameter 'x' [-Wunused-parameter] + 662 | void patch_modulator_special(int key, int x, int y) + | ~~~~^ +patch.c:662:50: warning: unused parameter 'y' [-Wunused-parameter] + 662 | void patch_modulator_special(int key, int x, int y) + | ~~~~^ +patch.c: In function 'patch_modulator_keyboard': +patch.c:739:45: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 739 | f=knob_scale2float(mod[csynth][mi].scale, f); + | ~~~~~~~~~~~~~~~^~~~~~ +patch.c:735:5: warning: switch missing default case [-Wswitch-default] + 735 | switch(modModulatorTypes[mod[csynth][mi].type]) { + | ^~~~~~ +patch.c:718:54: warning: unused parameter 'x' [-Wunused-parameter] + 718 | void patch_modulator_keyboard(unsigned char key, int x, int y) + | ~~~~^ synthesizer.c:483:45: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] 483 | mod[csynth][signaldrag].scale=modInputScale[mod[csynth][m].type][mod[csynth][m].inpactive]; | ^~~~~~~~~~~~~ -sequencer.c:791:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 791 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); - | ^ +patch.c:718:61: warning: unused parameter 'y' [-Wunused-parameter] + 718 | void patch_modulator_keyboard(unsigned char key, int x, int y) + | ~~~~^ +patch.c: In function 'knob_scale2float': synthesizer.c:502:21: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 502 | dialog_open(&synthlabel_draw, &synthlabel_hover, &synthlabel_click); | ^~~~~~~~~~~~~~~~ +patch.c:770:46: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 770 | case SCALE_FREQUENCY_TEMPO: return (value*bpm)/(60*OUTPUTFREQ); + | ^ dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~ -sequencer.c:791:70: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 791 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); - | ^ -shader.c: In function 'loadshader': synthesizer.c:502:39: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 502 | dialog_open(&synthlabel_draw, &synthlabel_hover, &synthlabel_click); | ^~~~~~~~~~~~~~~~~ -shader.c:53:3: warning: ignoring return value of 'fread' declared with attribute 'warn_unused_result' [-Wunused-result] - 53 | fread(temp, 1, 65536, f); - | ^~~~~~~~~~~~~~~~~~~~~~~~ dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~~ +patch.c:771:47: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 771 | case SCALE_DURATION_TEMPO: return (60/(bpm*value))*OUTPUTFREQ; + | ^ synthesizer.c:502:58: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 502 | dialog_open(&synthlabel_draw, &synthlabel_hover, &synthlabel_click); | ^~~~~~~~~~~~~~~~~ dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~~ -sequencer.c:791:53: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 791 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +patch.c:775:73: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 775 | case SCALE_MIDI_NOTE: return 8.1757989156 * pow(1.059463094, value) / OUTPUTFREQ; synthesizer.c:503:29: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] 503 | dialog_bindkeyboard(&synthlabel_keyboard); | ^~~~~~~~~~~~~~~~~~~~ dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' 23 | void dialog_bindkeyboard(void *kbfunc); | ~~~~~~^~~~~~ -sequencer.c:793:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 793 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); // was seqch+3 - | ^ +patch.c:776:38: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 776 | case SCALE_NOTE_INTERVAL: return pow(1.059463094, value); + | ^~~~~~~~~~~~~~~~~~~~~~~ synthesizer.c: In function 'synth_keyboard': -sequencer.c:793:70: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 793 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); // was seqch+3 - | ^ synthesizer.c:527:29: warning: passing argument 1 of 'dotfile_getvalue' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 527 | syndir=dotfile_getvalue("synthFileDir"); | ^~~~~~~~~~~~~~ dotfile.h:18:30: note: expected 'char *' but argument is of type 'const char *' 18 | char *dotfile_getvalue(char *key); | ~~~~~~^~~ +patch.c:767:3: warning: switch missing default case [-Wswitch-default] + 767 | switch(scale) { + | ^~~~~~ +patch.c: In function 'knob_float2scale': synthesizer.c:528:35: warning: passing argument 2 of 'filedialog_open' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 528 | filedialog_open(&fd[FD_SAVE], "ksyn", syndir); | ^~~~~~ filedialog.h:58:44: note: expected 'char *' but argument is of type 'const char *' 58 | void filedialog_open(filedialog *fd, char *ext, char *path); | ~~~~~~^~~ -sequencer.c:793:53: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 793 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); // was seqch+3 - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ synthesizer.c:530:17: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 530 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~ +patch.c:786:61: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 786 | case SCALE_FREQUENCY_TEMPO: return (value*60*OUTPUTFREQ)/bpm; + | ^ dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~ -sequencer.c:804:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 804 | sx=SEQUENCER_X+(j-seq_start)*SEQUENCER_CELLWIDTH -1.5; - | ^ synthesizer.c:530:35: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 530 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~~ dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~~ +patch.c:787:61: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 787 | case SCALE_DURATION_TEMPO: return (OUTPUTFREQ*60)/(value*bpm); + | ^ synthesizer.c:530:54: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 530 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~~ dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~~ -sequencer.c:805:28: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 805 | sl=seq_repeat[i][j]*pattlen[seq_pattern[i][j]]*SEQUENCER_CELLWIDTH; - | ^ synthesizer.c:531:25: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] 531 | dialog_bindkeyboard(&synth_file_keyboard); | ^~~~~~~~~~~~~~~~~~~~ dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' 23 | void dialog_bindkeyboard(void *kbfunc); | ~~~~~~^~~~~~ +patch.c:791:48: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 791 | case SCALE_MIDI_NOTE: return 17.31234049667*log(0.12231220586*value*OUTPUTFREQ); + | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ synthesizer.c:532:21: warning: ISO C forbids passing argument 1 of 'dialog_binddrag' between function pointer and 'void *' [-Wpedantic] 532 | dialog_binddrag(&synth_file_drag); | ^~~~~~~~~~~~~~~~ dialog.h:31:28: note: expected 'void *' but argument is of type 'void (*)(int, int)' 31 | void dialog_binddrag(void *dragfunc); | ~~~~~~^~~~~~~~ +patch.c:792:52: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 792 | case SCALE_NOTE_INTERVAL: return 17.31234049667*log(value); + | ~~~~~~~~~~~~~~^~~~~~~~~~~ synthesizer.c:537:29: warning: passing argument 1 of 'dotfile_getvalue' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 537 | syndir=dotfile_getvalue("synthFileDir"); | ^~~~~~~~~~~~~~ dotfile.h:18:30: note: expected 'char *' but argument is of type 'const char *' 18 | char *dotfile_getvalue(char *key); | ~~~~~~^~~ +patch.c:783:3: warning: switch missing default case [-Wswitch-default] + 783 | switch(scale) { + | ^~~~~~ synthesizer.c:538:35: warning: passing argument 2 of 'filedialog_open' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 538 | filedialog_open(&fd[FD_LOAD], "ksyn", syndir); | ^~~~~~ @@ -4715,23 +4099,9 @@ dialog.h:31:28: note: expected 'void *' but argument is of type 'void (*)(int, int)' 31 | void dialog_binddrag(void *dragfunc); | ~~~~~~^~~~~~~~ -filedialog.c: In function 'filedialog_draw': -filedialog.c:126:7: warning: '__builtin_strncpy' specified bound 255 equals destination size [-Wstringop-truncation] - 126 | strncpy(tmps, strrchr(fd->g.gl_pathv[i], '/')+1, 255); - | ^ -filedialog.c:126:7: warning: '__builtin_strncpy' specified bound 255 equals destination size [-Wstringop-truncation] -filedialog.c:114:7: warning: '__builtin___strncpy_chk' specified bound depends on the length of the source argument [-Wstringop-truncation] - 114 | strncpy(ttmps, fd->g.gl_pathv[i], strlen(fd->g.gl_pathv[i])-1); - | ^ -filedialog.c:114:41: note: length computed here - 114 | strncpy(ttmps, fd->g.gl_pathv[i], strlen(fd->g.gl_pathv[i])-1); - | ^~~~~~~~~~~~~~~~~~~~~~~~~ synthesizer.c:514:44: warning: unused parameter 'x' [-Wunused-parameter] 514 | void synth_keyboard(unsigned char key, int x, int y) | ~~~~^ -filedialog.c:116:7: warning: '__builtin_strncpy' specified bound 255 equals destination size [-Wstringop-truncation] - 116 | strncpy(tmps, rindex(ttmps, '/')+1, 255); - | ^ synthesizer.c:514:51: warning: unused parameter 'y' [-Wunused-parameter] 514 | void synth_keyboard(unsigned char key, int x, int y) | ~~~~^ @@ -4745,32 +4115,7 @@ synthesizer.c:553:53: warning: unused parameter 'y' [-Wunused-parameter] 553 | void synth_specialkey(unsigned char key, int x, int y) | ~~~~^ -sequencer.c:805:12: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 805 | sl=seq_repeat[i][j]*pattlen[seq_pattern[i][j]]*SEQUENCER_CELLWIDTH; - | ^~~~~~~~~~ -sequencer.c:807:16: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 807 | if ((sx+sl) > SEQUENCER_X) { - | ^ -synthesizer.h:84:6: warning: redundant redeclaration of 'synth_stackify' [-Wredundant-decls] - 84 | void synth_stackify(int syn); - | ^~~~~~~~~~~~~~ -In file included from fileops.c:18: -fileops.h:62:6: note: previous declaration of 'synth_stackify' with type 'void(int)' - 62 | void synth_stackify(int syn); - | ^~~~~~~~~~~~~~ -synthesizer.h:85:5: warning: redundant redeclaration of 'synth_trace' [-Wredundant-decls] - 85 | int synth_trace(int syn, int pm, int fifo); - | ^~~~~~~~~~~ -fileops.h:63:5: note: previous declaration of 'synth_trace' with type 'int(int, int, int)' - 63 | int synth_trace(int syn, int pm, int top); - | ^~~~~~~~~~~ -sequencer.c:810:15: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 810 | sl-=(SEQUENCER_X-sx); - | ^~ synthesizer.c: In function 'synth_draw': -sequencer.c:810:17: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] - 810 | sl-=(SEQUENCER_X-sx); - | ^ synthesizer.c:624:37: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 624 | draw_button(14, DS_HEIGHT-14, 16, "<<", synth_ui[B_PREV]); | ^~~~ @@ -4778,252 +4123,111 @@ widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' 37 | void draw_button(float x, float y, float size, char *label, int type); | ~~~~~~^~~~~ -sequencer.c:816:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 816 | glVertex2f( sx+1, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); - | ^ synthesizer.c:627:37: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 627 | draw_button(64, DS_HEIGHT-14, 16, ">>", synth_ui[B_NEXT]); | ^~~~ widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' 37 | void draw_button(float x, float y, float size, char *label, int type); | ~~~~~~^~~~~ -fileops.c: In function 'load_ksong': -fileops.c:71:12: warning: conversion from 'long int' to 'int' may change value [-Wconversion] - 71 | chunklen=probe_chunk(f, chunktype); - | ^~~~~~~~~~~ -sequencer.c:817:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 817 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); - | ^ -fileops.c:77:8: warning: conversion from 'long int' to 'int' may change value [-Wconversion] - 77 | flen=ftell(f); - | ^~~~~ synthesizer.c:629:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 629 | draw_button(310, DS_HEIGHT-14, 16, "m", synth_ui[B_ADD]); | ^~~ widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' 37 | void draw_button(float x, float y, float size, char *label, int type); | ~~~~~~^~~~~ -fileops.c:86:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 86 | r=fread(&cpat, sizeof(int), 1, f); - | ^~~~~ -sequencer.c:817:43: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 817 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); - | ^ -fileops.c:91:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 91 | r=fread(&csyn, sizeof(int), 1, f); - | ^~~~~ synthesizer.c:630:38: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 630 | draw_button(350, DS_HEIGHT-14, 16, "S", synth_ui[B_SAVE]); | ^~~ widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' 37 | void draw_button(float x, float y, float size, char *label, int type); | ~~~~~~^~~~~ -fileops.c:63:10: warning: variable 'r' set but not used [-Wunused-but-set-variable] - 63 | int i, r, cpat, csyn; - | ^ -sequencer.c:818:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 818 | glVertex2f( sx+sl, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); - | ^ -fileops.c: In function 'save_ksong': -fileops.c:124:18: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] - 124 | for(n=0,i=0;ifullpath, fd->fmask+1, 512); + | ^ +In function 'strncat', + inlined from 'filedialog_keyboard' at filedialog.c:247:5: +/usr/include/x86_64-linux-gnu/bits/string_fortified.h:138:10: warning: '__builtin___strncat_chk' specified bound 512 equals destination size [-Wstringop-overflow=] + 138 | return __builtin___strncat_chk (__dest, __src, __len, + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 139 | __glibc_objsize (__dest)); + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +In function 'strncat', + inlined from 'filedialog_keyboard' at filedialog.c:250:7: +/usr/include/x86_64-linux-gnu/bits/string_fortified.h:138:10: warning: '__builtin___strncat_chk' specified bound 512 equals destination size [-Wstringop-overflow=] + 138 | return __builtin___strncat_chk (__dest, __src, __len, + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 139 | __glibc_objsize (__dest)); + | ~~~~~~~~~~~~~~~~~~~~~~~~~ synthesizer.c:732:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] 732 | if (state==GLUT_DOWN && !hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2), 260, 526)) { dialog_close(); return; } | ^ -fileops.c:307:101: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] - 307 | for(i=0;i=0) { if (signalfifo[syn][m]>mm) mm=signalfifo[syn][m]; m++; } - | ^ -sequencer.c:864:21: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 864 | sx=SEQUENCER_X+(j-seq_start)*SEQUENCER_CELLWIDTH; - | ^ -fileops.c:374:64: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 374 | while(signalfifo[syn][m]>=0) { if (signalfifo[syn][m]>mm) mm=signalfifo[syn][m]; m++; } - | ^~~~~~~~~~ +fileops.h:63:5: note: previous declaration of 'synth_trace' with type 'int(int, int, int)' + 63 | int synth_trace(int syn, int pm, int top); + | ^~~~~~~~~~~ synthesizer.c:890:46: warning: conversion from 'int' to 'float' may change value [-Wconversion] 890 | synth_ui[B_LABEL_INCSCALE]=hovertest_box(x, y, (DS_WIDTH/2)+112, (DS_HEIGHT/2)+32, 16, 16); | ^ -fileops.c:378:9: warning: conversion from 'long unsigned int' to 'unsigned int' may change value [-Wconversion] - 378 | dsize=8 + MAX_PATCHES * (128 + 3*stacklen*4); - | ^ -sequencer.c:865:26: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 865 | sl=seq_repeat[i][j]*pattlen[seq_pattern[i][j]]*SEQUENCER_CELLWIDTH; - | ^ +sequencer.h:33:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 33 | void sequencer_init(); + | ^~~~ synthesizer.c:890:49: warning: conversion from 'int' to 'float' may change value [-Wconversion] 890 | synth_ui[B_LABEL_INCSCALE]=hovertest_box(x, y, (DS_WIDTH/2)+112, (DS_HEIGHT/2)+32, 16, 16); | ^ -sequencer.c:865:10: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] - 865 | sl=seq_repeat[i][j]*pattlen[seq_pattern[i][j]]*SEQUENCER_CELLWIDTH; - | ^~~~~~~~~~ -fileops.c:397:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'unsigned int' may change value [-Wconversion] - 397 | m=fwrite(filedata, sizeof(char), dsize+8, f); - | ^~~~~~ +sequencer.h:80:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 80 | void sequencer_bpm_close_dialog(); + | ^~~~ +sequencer.c:171:6: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 171 | void sequencer_init() + | ^~~~~~~~~~~~~~ +sequencer.c: In function 'sequencer_init': +sequencer.c:171:6: warning: old-style function definition [-Wold-style-definition] +sequencer.c: At top level: +sequencer.c:240:6: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 240 | void sequencer_toggleplayback() { + | ^~~~~~~~~~~~~~~~~~~~~~~~ +sequencer.c: In function 'sequencer_toggleplayback': +sequencer.c:240:6: warning: old-style function definition [-Wold-style-definition] +sequencer.c: In function 'sequencer_ispattern': +sequencer.c:265:69: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 265 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { + | ^ +sequencer.c:265:41: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 265 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { + | ^ +In file included from widgets.h:23, + from dialog.h:16, + from about.h:17, + from main.c:28: +modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 152 | void calc_supersaw_tables(); + | ^~~~ +sequencer.c:265:37: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] + 265 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { + | ^ +sequencer.c: In function 'sequencer_patternstart': +sequencer.c:281:69: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 281 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { + | ^ +sequencer.c:281:41: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 281 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { + | ^ +sequencer.c:281:37: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] + 281 | if (clickpos >= i && clickpos < (i+pattlen[seq_pattern[ch][i]]*seq_repeat[ch][i])) { + | ^ +sequencer.c: At top level: +sequencer.c:298:5: warning: no previous prototype for 'sequencer_cursorpos' [-Wmissing-prototypes] + 298 | int sequencer_cursorpos(int x, int y, int *channel, int *measure) + | ^~~~~~~~~~~~~~~~~~~ synthesizer.c:891:46: warning: conversion from 'int' to 'float' may change value [-Wconversion] 891 | synth_ui[B_LABEL_DECSCALE]=hovertest_box(x, y, (DS_WIDTH/2)-52, (DS_HEIGHT/2)+32, 16, 16); | ^ -sequencer.c:867:14: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 867 | if ((sx+sl) > SEQUENCER_X) { - | ^ -fileops.c: In function 'save_chunk_kpat': -fileops.c:411:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 411 | r=fwrite("KPAT", sizeof(char), 4, f); - | ^~~~~~ synthesizer.c:891:49: warning: conversion from 'int' to 'float' may change value [-Wconversion] 891 | synth_ui[B_LABEL_DECSCALE]=hovertest_box(x, y, (DS_WIDTH/2)-52, (DS_HEIGHT/2)+32, 16, 16); | ^ -fileops.c:413:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 413 | r=fwrite(&chunklen, sizeof(unsigned int), 1, f); - | ^~~~~~ -sequencer.c:870:13: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 870 | sl-=(SEQUENCER_X-sx); - | ^~ -fileops.c:415:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 415 | r=fwrite(&pattlen[patt], sizeof(unsigned int), 1, f); - | ^~~~~~ -sequencer.c:870:15: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] - 870 | sl-=(SEQUENCER_X-sx); - | ^ synthesizer.c:897:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] 897 | synth_ui[B_HUE_PICKER]=hovertest_box(x, y, (DS_WIDTH/2)+21, (DS_HEIGHT/2)+2, 17, 162); | ^ -fileops.c:417:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 417 | r=fwrite(&pattdata[patt], sizeof(unsigned int), pattlen[patt]*16, f); - | ^~~~~~ -fileops.c: In function 'save_chunk_kseq': -fileops.c:429:12: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] - 429 | chunklen=12 + 4*seqch + 4*seqch*seqsonglen*4; - | ^~ -sequencer.c:882:43: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 882 | glVertex2f( sx+1, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); - | ^ -fileops.c:430:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 430 | r=fwrite("KSEQ", sizeof(char), 4, f); - | ^~~~~~ synthesizer.c:897:43: warning: conversion from 'int' to 'float' may change value [-Wconversion] 897 | synth_ui[B_HUE_PICKER]=hovertest_box(x, y, (DS_WIDTH/2)+21, (DS_HEIGHT/2)+2, 17, 162); | ^ -fileops.c:431:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 431 | r=fwrite(&chunklen, sizeof(unsigned int), 1, f); - | ^~~~~~ -sequencer.c:883:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 883 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); - | ^ -fileops.c:433:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 433 | r=fwrite(&seqch, sizeof(unsigned int), 1, f); - | ^~~~~~ -fileops.c:434:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 434 | r=fwrite(&seqsonglen, sizeof(unsigned int), 1, f); - | ^~~~~~ synthesizer.c:898:44: warning: conversion from 'int' to 'float' may change value [-Wconversion] 898 | synth_ui[B_HUE_PICKER_BOX]=hovertest_box(x, y, (DS_WIDTH/2)+21+81+11, (DS_HEIGHT/2)+2, 17, 18); | ^ -sequencer.c:883:41: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 883 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); - | ^ -fileops.c:435:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 435 | r=fwrite(&bpm, sizeof(unsigned int), 1, f); - | ^~~~~~ -sequencer.c:884:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 884 | glVertex2f( sx+sl, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); - | ^ synthesizer.c:898:47: warning: conversion from 'int' to 'float' may change value [-Wconversion] 898 | synth_ui[B_HUE_PICKER_BOX]=hovertest_box(x, y, (DS_WIDTH/2)+21+81+11, (DS_HEIGHT/2)+2, 17, 18); | ^ -fileops.c:438:45: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] - 438 | r=fwrite(seq_synth, sizeof(unsigned int), seqch, f); - | ^~~~~ synthesizer.c: In function 'synthlabel_click': -fileops.c:438:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 438 | r=fwrite(seq_synth, sizeof(unsigned int), seqch, f); - | ^~~~~~ -sequencer.c:884:41: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 884 | glVertex2f( sx+sl, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); - | ^ synthesizer.c:904:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] 904 | if (state==GLUT_DOWN && !hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2), 160, 320)) { dialog_close(); return; } | ^ -fileops.c:441:73: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] - 441 | for(i=0;i (SEQUENCER_Y + (seqch+2)*SEQUENCER_CELLHEIGHT) && + | ^ +sequencer.c:320:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 320 | y < (SEQUENCER_Y + (seqch+3)*SEQUENCER_CELLHEIGHT) + | ^ +sequencer.c:323:16: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 323 | cx=(int)((x-SEQUENCER_X)/SEQUENCER_CELLWIDTH); + | ^ +sequencer.c: At top level: +sequencer.c:333:5: warning: no previous prototype for 'sequencer_timelinepos' [-Wmissing-prototypes] + 333 | int sequencer_timelinepos(int x, int y) { + | ^~~~~~~~~~~~~~~~~~~~~ +sequencer.c: In function 'sequencer_timelinepos': +sequencer.c:337:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 337 | x < (SEQUENCER_X + seqsonglen*SEQUENCER_CELLWIDTH + 1) && + | ^ +sequencer.c:338:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 338 | y > (SEQUENCER_Y + (seqch+3)*SEQUENCER_CELLHEIGHT) && + | ^ +sequencer.c:339:24: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 339 | y < (SEQUENCER_Y + (seqch+4)*SEQUENCER_CELLHEIGHT+4) + | ^ +sequencer.c:341:20: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 341 | return (int)((x-SEQUENCER_X)/SEQUENCER_CELLWIDTH); + | ^ +sequencer.c: In function 'sequencer_mouse_hover': +sequencer.c:351:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 351 | seq_ui[B_DECCH]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); + | ^ +sequencer.c:351:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 351 | seq_ui[B_DECCH]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); + | ^ +sequencer.c:352:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 352 | seq_ui[B_ADDCH]=hovertest_box(x, y, 80, DS_HEIGHT-14, 16, 16); + | ^ +sequencer.c:352:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 352 | seq_ui[B_ADDCH]=hovertest_box(x, y, 80, DS_HEIGHT-14, 16, 16); + | ^ +sequencer.c:357:31: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 357 | seq_ui[B_BPM]=hovertest_box(x, y, 151, DS_HEIGHT-14, 16, 46); + | ^ +sequencer.c:357:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 357 | seq_ui[B_BPM]=hovertest_box(x, y, 151, DS_HEIGHT-14, 16, 46); + | ^ +sequencer.c:358:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 358 | seq_ui[B_SSHORTER]=hovertest_box(x, y, 222, DS_HEIGHT-14, 16, 16); + | ^ +sequencer.c:358:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 358 | seq_ui[B_SSHORTER]=hovertest_box(x, y, 222, DS_HEIGHT-14, 16, 16); + | ^ +In file included from main.c:29: +audio.h:56:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 56 | int audio_exportwav(); //char *filename); + | ^~~ +In file included from synthesizer.h:29, + from buffermm.h:18, + from main.c:30: +dotfile.h:16:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 16 | int dotfile_load(); + | ^~~ +dotfile.h:17:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 17 | int dotfile_save(); + | ^~~ +sequencer.c:359:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 359 | seq_ui[B_SLONGER]=hovertest_box(x, y, 304, DS_HEIGHT-14, 16, 16); + | ^ +sequencer.c:359:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 359 | seq_ui[B_SLONGER]=hovertest_box(x, y, 304, DS_HEIGHT-14, 16, 16); + | ^ +sequencer.c:361:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 361 | seq_ui[B_SAVE_SONG]=hovertest_box(x, y, 350, DS_HEIGHT-14, 16, 16); + | ^ +sequencer.c:361:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 361 | seq_ui[B_SAVE_SONG]=hovertest_box(x, y, 350, DS_HEIGHT-14, 16, 16); + | ^ synthesizer.c:921:60: warning: conversion from 'int' to 'float' may change value [-Wconversion] 921 | float hue=1.0 + 254.0 * ( (x-((DS_WIDTH/2)+21-81) )/162.0); | ^ -sequencer.c:897:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 897 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start+1)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+ seq_hover_ch *SEQUENCER_CELLHEIGHT ); - | ^ -fileops.c:444:73: warning: conversion to 'size_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion] - 444 | for(i=0;i(1+cip-cos)) seq_start=(1+cip-cos); + | ^ +sequencer.c: In function 'sequencer_mouse_click': +sequencer.c:458:24: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 458 | console_post("Song cleared and everything reset back to defaults"); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from pattern.h:19, + from buffermm.h:17: +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +sequencer.c:461:24: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 461 | console_post("Click again to start a new song from scratch"); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +sequencer.c:477:21: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 477 | dialog_open(&sequencer_draw_bpm, &sequencer_bpm_hover, &sequencer_bpm_click); + | ^~~~~~~~~~~~~~~~~~~ +In file included from synthesizer.h:28: +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +sequencer.c:477:42: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 477 | dialog_open(&sequencer_draw_bpm, &sequencer_bpm_hover, &sequencer_bpm_click); + | ^~~~~~~~~~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:477:64: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 477 | dialog_open(&sequencer_draw_bpm, &sequencer_bpm_hover, &sequencer_bpm_click); + | ^~~~~~~~~~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:478:29: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 478 | dialog_bindkeyboard(&sequencer_bpm_keyboard); + | ^~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +sequencer.c:489:35: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 489 | n=i+seq_repeat[j][i]*pattlen[seq_pattern[j][i]]; + | ^ +sequencer.c:489:18: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 489 | n=i+seq_repeat[j][i]*pattlen[seq_pattern[j][i]]; + | ^ +sequencer.c:489:17: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 489 | n=i+seq_repeat[j][i]*pattlen[seq_pattern[j][i]]; + | ^ +sequencer.c:502:21: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 502 | dialog_open(&sequencer_draw_render, &sequencer_render_hover, &sequencer_render_click); + | ^~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +sequencer.c:502:45: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 502 | dialog_open(&sequencer_draw_render, &sequencer_render_hover, &sequencer_render_click); + | ^~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:502:70: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 502 | dialog_open(&sequencer_draw_render, &sequencer_render_hover, &sequencer_render_click); + | ^~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:503:29: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 503 | dialog_bindkeyboard(&sequencer_render_keyboard); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +sequencer.c:513:34: warning: passing argument 1 of 'dotfile_getvalue' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 513 | songdir=dotfile_getvalue("songFileDir"); + | ^~~~~~~~~~~~~ +dotfile.h:18:30: note: expected 'char *' but argument is of type 'const char *' + 18 | char *dotfile_getvalue(char *key); + | ~~~~~~^~~ +sequencer.c:514:43: warning: passing argument 2 of 'filedialog_open' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 514 | filedialog_open(&songfd[FD_SAVE], "ksong", songdir); + | ^~~~~~~ +In file included from synthesizer.h:30: +filedialog.h:58:44: note: expected 'char *' but argument is of type 'const char *' + 58 | void filedialog_open(filedialog *fd, char *ext, char *path); + | ~~~~~~^~~ +sequencer.c:516:21: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 516 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~ +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +sequencer.c:516:43: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 516 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:516:66: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 516 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:517:29: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 517 | dialog_bindkeyboard(&sequencer_file_keyboard); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +sequencer.c:518:25: warning: ISO C forbids passing argument 1 of 'dialog_binddrag' between function pointer and 'void *' [-Wpedantic] + 518 | dialog_binddrag(&sequencer_file_drag); + | ^~~~~~~~~~~~~~~~~~~~ +dialog.h:31:28: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 31 | void dialog_binddrag(void *dragfunc); + | ~~~~~~^~~~~~~~ +sequencer.h:80:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 80 | void sequencer_bpm_close_dialog(); + | ^~~~ +main.c:79:6: warning: no previous prototype for 'mouse_hoverfunc' [-Wmissing-prototypes] + 79 | void mouse_hoverfunc(int x, int y) + | ^~~~~~~~~~~~~~~ +main.c: In function 'mouse_hoverfunc': +main.c:87:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 87 | main_ui[MAIN_PAGE1]=hovertest_box(x,y,DS_WIDTH-159, DS_HEIGHT-14, 16, 16); + | ^ +main.c:87:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 87 | main_ui[MAIN_PAGE1]=hovertest_box(x,y,DS_WIDTH-159, DS_HEIGHT-14, 16, 16); + | ^ +main.c:88:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 88 | main_ui[MAIN_PAGE2]=hovertest_box(x,y,DS_WIDTH-137, DS_HEIGHT-14, 16, 16); + | ^ +main.c:88:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 88 | main_ui[MAIN_PAGE2]=hovertest_box(x,y,DS_WIDTH-137, DS_HEIGHT-14, 16, 16); + | ^ +main.c:89:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 89 | main_ui[MAIN_PAGE3]=hovertest_box(x,y,DS_WIDTH-115, DS_HEIGHT-14, 16, 16); + | ^ +main.c:89:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 89 | main_ui[MAIN_PAGE3]=hovertest_box(x,y,DS_WIDTH-115, DS_HEIGHT-14, 16, 16); + | ^ +main.c:90:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 90 | main_ui[MAIN_PAGE4]=hovertest_box(x,y,DS_WIDTH-93, DS_HEIGHT-14, 16, 16); + | ^ +main.c:90:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 90 | main_ui[MAIN_PAGE4]=hovertest_box(x,y,DS_WIDTH-93, DS_HEIGHT-14, 16, 16); + | ^ +main.c:91:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 91 | main_ui[MAIN_ABOUT]=hovertest_box(x,y,DS_WIDTH-42,DS_HEIGHT-14, 16, 73); + | ^ +main.c:91:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 91 | main_ui[MAIN_ABOUT]=hovertest_box(x,y,DS_WIDTH-42,DS_HEIGHT-14, 16, 73); + | ^ +main.c:92:37: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 92 | main_ui[MAIN_PANIC]=hovertest_box(x, y, DS_WIDTH-206, DS_HEIGHT-14, 16, 16); + | ^ +main.c:92:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 92 | main_ui[MAIN_PANIC]=hovertest_box(x, y, DS_WIDTH-206, DS_HEIGHT-14, 16, 16); + | ^ +main.c:93:34: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 93 | main_ui[MAIN_VU]=hovertest_box(x,y,728, DS_HEIGHT-14, 16, 100); + | ^ +main.c:93:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 93 | main_ui[MAIN_VU]=hovertest_box(x,y,728, DS_HEIGHT-14, 16, 100); + | ^ +main.c: At top level: +main.c:105:6: warning: no previous prototype for 'mouse_dragfunc' [-Wmissing-prototypes] + 105 | void mouse_dragfunc(int x, int y) + | ^~~~~~~~~~~~~~ +main.c:123:6: warning: no previous prototype for 'mouse_clickfunc' [-Wmissing-prototypes] + 123 | void mouse_clickfunc(int button, int state, int x, int y) + | ^~~~~~~~~~~~~~~ +main.c: In function 'mouse_clickfunc': +main.c:130:47: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 130 | if (main_ui[MAIN_PAGE1]) { console_post("Synthesizers"); cpage=1; return; } + | ^~~~~~~~~~~~~~ +In file included from pattern.h:19, + from buffermm.h:17: +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +main.c:131:47: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 131 | if (main_ui[MAIN_PAGE2]) { console_post("Patches"); cpage=2; return; } + | ^~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +main.c:132:47: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 132 | if (main_ui[MAIN_PAGE3]) { console_post("Patterns"); cpage=3; return; } + | ^~~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +main.c:133:47: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 133 | if (main_ui[MAIN_PAGE4]) { console_post("Sequencer"); cpage=4; return; } + | ^~~~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +main.c:134:46: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 134 | if (main_ui[MAIN_ABOUT]) { dialog_open(&about_draw, &about_hover, &about_click); dialog_bindkeyboard(&about_keyboard); return; } + | ^~~~~~~~~~~ +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +main.c:134:59: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 134 | if (main_ui[MAIN_ABOUT]) { dialog_open(&about_draw, &about_hover, &about_click); dialog_bindkeyboard(&about_keyboard); return; } + | ^~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +main.c:134:73: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 134 | if (main_ui[MAIN_ABOUT]) { dialog_open(&about_draw, &about_hover, &about_click); dialog_bindkeyboard(&about_keyboard); return; } + | ^~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +main.c:134:108: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 134 | if (main_ui[MAIN_ABOUT]) { dialog_open(&about_draw, &about_hover, &about_click); dialog_bindkeyboard(&about_keyboard); return; } + | ^~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +main.c:141:61: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 141 | if (main_ui[MAIN_VU]) { audio_peak=0.0f; console_post("VU meter peak reset"); return; } + | ^~~~~~~~~~~~~~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +main.c: At top level: +main.c:155:6: warning: no previous prototype for 'keyboardfunc' [-Wmissing-prototypes] + 155 | void keyboardfunc(unsigned char key, int x, int y) + | ^~~~~~~~~~~~ +main.c:168:6: warning: no previous prototype for 'keyboardupfunc' [-Wmissing-prototypes] + 168 | void keyboardupfunc(unsigned char key, int x, int y) + | ^~~~~~~~~~~~~~ +main.c:179:6: warning: no previous prototype for 'specialkeyfunc' [-Wmissing-prototypes] + 179 | void specialkeyfunc(int key, int x, int y) + | ^~~~~~~~~~~~~~ +main.c: In function 'specialkeyfunc': +sequencer.c:522:34: warning: passing argument 1 of 'dotfile_getvalue' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 522 | songdir=dotfile_getvalue("songFileDir"); + | ^~~~~~~~~~~~~ +dotfile.h:18:30: note: expected 'char *' but argument is of type 'const char *' + 18 | char *dotfile_getvalue(char *key); + | ~~~~~~^~~ +sequencer.c:523:43: warning: passing argument 2 of 'filedialog_open' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 523 | filedialog_open(&songfd[FD_LOAD], "ksong", songdir); + | ^~~~~~~ +filedialog.h:58:44: note: expected 'char *' but argument is of type 'const char *' + 58 | void filedialog_open(filedialog *fd, char *ext, char *path); + | ~~~~~~^~~ +sequencer.c:525:21: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 525 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~ +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +sequencer.c:525:43: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 525 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:525:66: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 525 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:526:29: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 526 | dialog_bindkeyboard(&sequencer_file_keyboard); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +sequencer.c:527:25: warning: ISO C forbids passing argument 1 of 'dialog_binddrag' between function pointer and 'void *' [-Wpedantic] + 527 | dialog_binddrag(&sequencer_file_drag); + | ^~~~~~~~~~~~~~~~~~~~ +dialog.h:31:28: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 31 | void dialog_binddrag(void *dragfunc); + | ~~~~~~^~~~~~~~ +sequencer.c:576:22: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 576 | console_post("Modulator commands are not yet implemented!"); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +sequencer.c:582:23: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 582 | dialog_open(&sequencer_draw_channel, &sequencer_channel_hover, &sequencer_channel_click); + | ^~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +sequencer.c:582:48: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 582 | dialog_open(&sequencer_draw_channel, &sequencer_channel_hover, &sequencer_channel_click); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:582:74: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 582 | dialog_open(&sequencer_draw_channel, &sequencer_channel_hover, &sequencer_channel_click); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:583:31: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 583 | dialog_bindkeyboard(&sequencer_channel_keyboard); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +main.c:186:39: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion] + 186 | case MAIN_PAGE1: synth_specialkey(key, x, y); break; + | ^~~ +main.c:187:39: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion] + 187 | case MAIN_PAGE2: patch_specialkey(key, x, y); break; + | ^~~ +main.c:188:41: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion] + 188 | case MAIN_PAGE3: pattern_specialkey(key, x, y); break; + | ^~~ +main.c:184:3: warning: switch missing default case [-Wswitch-default] + 184 | switch (cpage) + | ^~~~~~ +main.c:195:36: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 195 | if (cpage!=1) { console_post("Synthesizers"); cpage=1;} + | ^~~~~~~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +main.c:198:36: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 198 | if (cpage!=2) { console_post("Patches"); cpage=2; } + | ^~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +main.c:201:36: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 201 | if (cpage!=3) { console_post("Patterns"); cpage=3; } + | ^~~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +main.c:204:36: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 204 | if (cpage!=4) { console_post("Sequencer"); cpage=4; } + | ^~~~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +main.c: At top level: +main.c:212:6: warning: no previous prototype for 'update' [-Wmissing-prototypes] + 212 | void update(int value) + | ^~~~~~ +main.c:222:7: warning: no previous prototype for 'audio_playback' [-Wmissing-prototypes] + 222 | void *audio_playback(void *param) + | ^~~~~~~~~~~~~~ +main.c: In function 'audio_playback': +main.c:224:7: warning: variable 'rc' set but not used [-Wunused-but-set-variable] + 224 | int rc; + | ^~ +main.c:222:28: warning: unused parameter 'param' [-Wunused-parameter] + 222 | void *audio_playback(void *param) + | ~~~~~~^~~~~ +main.c: At top level: +main.c:233:7: warning: no previous prototype for 'audio_renderer' [-Wmissing-prototypes] + 233 | void *audio_renderer(void *param) + | ^~~~~~~~~~~~~~ +main.c: In function 'audio_renderer': +main.c:235:7: warning: variable 'rc' set but not used [-Wunused-but-set-variable] + 235 | int rc; + | ^~ +main.c:233:28: warning: unused parameter 'param' [-Wunused-parameter] + 233 | void *audio_renderer(void *param) + | ~~~~~~^~~~~ +main.c: At top level: +main.c:248:6: warning: no previous prototype for 'display' [-Wmissing-prototypes] + 248 | void display(void) + | ^~~~~~~ +main.c: In function 'display': +main.c:284:47: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 284 | draw_button(DS_WIDTH-159, DS_HEIGHT-14, 16, "1", main_ui[MAIN_PAGE1]); + | ^~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +main.c:285:47: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 285 | draw_button(DS_WIDTH-137, DS_HEIGHT-14, 16, "2", main_ui[MAIN_PAGE2]); + | ^~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +main.c:286:47: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 286 | draw_button(DS_WIDTH-115, DS_HEIGHT-14, 16, "3", main_ui[MAIN_PAGE3]); + | ^~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +main.c:287:46: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 287 | draw_button(DS_WIDTH-93, DS_HEIGHT-14, 16, "4", main_ui[MAIN_PAGE4]); + | ^~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +main.c:288:51: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 288 | draw_textbox(DS_WIDTH-42, DS_HEIGHT-14, 16, 74, "komposter", main_ui[MAIN_ABOUT]); + | ^~~~~~~~~~~ +widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' + 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); + | ~~~~~~^~~~~ +main.c:292:47: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 292 | draw_button(DS_WIDTH-206, DS_HEIGHT-14, 16, "!!!", main_ui[MAIN_PANIC]); + | ^~~~~ +widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' + 37 | void draw_button(float x, float y, float size, char *label, int type); + | ~~~~~~^~~~~ +main.c:295:6: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 295 | rf=fmin(1.0f, audio_latest_peak); + | ^~~~ +sequencer.c:609:61: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 609 | pl=seq_repeat[seq_drag_pattch][seq_drag_pattstart]*pattlen[seq_pattern[seq_drag_pattch][seq_drag_pattstart]]; + | ^ +sequencer.c:609:14: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 609 | pl=seq_repeat[seq_drag_pattch][seq_drag_pattstart]*pattlen[seq_pattern[seq_drag_pattch][seq_drag_pattstart]]; + | ^~~~~~~~~~ +sequencer.c:624:24: warning: passing argument 1 of 'console_post' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 624 | console_post("Patterns"); + | ^~~~~~~~~~ +console.h:23:25: note: expected 'char *' but argument is of type 'const char *' + 23 | void console_post(char *msg); + | ~~~~~~^~~ +sequencer.c:654:23: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 654 | dialog_open(&sequencer_draw_pattern, &sequencer_pattern_hover, &sequencer_pattern_click); + | ^~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +sequencer.c:654:48: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 654 | dialog_open(&sequencer_draw_pattern, &sequencer_pattern_hover, &sequencer_pattern_click); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:654:74: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 654 | dialog_open(&sequencer_draw_pattern, &sequencer_pattern_hover, &sequencer_pattern_click); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:655:31: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 655 | dialog_bindkeyboard(&sequencer_pattern_keyboard); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +sequencer.c:663:23: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 663 | dialog_open(&sequencer_draw_pattern, &sequencer_pattern_hover, &sequencer_pattern_click); + | ^~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +sequencer.c:663:48: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 663 | dialog_open(&sequencer_draw_pattern, &sequencer_pattern_hover, &sequencer_pattern_click); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:663:74: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 663 | dialog_open(&sequencer_draw_pattern, &sequencer_pattern_hover, &sequencer_pattern_click); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:664:31: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 664 | dialog_bindkeyboard(&sequencer_pattern_keyboard); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +main.c:298:44: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 298 | draw_textbox(728, DS_HEIGHT-14, 16, 100, "", main_ui[MAIN_VU]); + | ^~ +widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' + 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); + | ~~~~~~^~~~~ +main.c:310:24: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 310 | unsigned int color=0x00b05500|(panic<<24); + | ^~~~~~~~~~ +main.c: At top level: +main.c:322:6: warning: no previous prototype for 'cleanup' [-Wmissing-prototypes] + 322 | void cleanup(void) + | ^~~~~~~ +main.c:332:5: warning: no previous prototype for 'is_dir' [-Wmissing-prototypes] + 332 | int is_dir(const char *path) + | ^~~~~~ +main.c: In function 'main': +main.c:435:15: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 435 | dialog_open(&about_draw, &about_hover, &about_click); + | ^~~~~~~~~~~ +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +main.c:435:28: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 435 | dialog_open(&about_draw, &about_hover, &about_click); + | ^~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +main.c:435:42: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 435 | dialog_open(&about_draw, &about_hover, &about_click); + | ^~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +main.c:436:23: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 436 | dialog_bindkeyboard(&about_keyboard); + | ^~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +sequencer.c: In function 'sequencer_keyboard': +sequencer.c:706:30: warning: passing argument 1 of 'dotfile_getvalue' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 706 | songdir=dotfile_getvalue("songFileDir"); + | ^~~~~~~~~~~~~ +dotfile.h:18:30: note: expected 'char *' but argument is of type 'const char *' + 18 | char *dotfile_getvalue(char *key); + | ~~~~~~^~~ +sequencer.c:707:39: warning: passing argument 2 of 'filedialog_open' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 707 | filedialog_open(&songfd[FD_SAVE], "ksong", songdir); + | ^~~~~~~ +filedialog.h:58:44: note: expected 'char *' but argument is of type 'const char *' + 58 | void filedialog_open(filedialog *fd, char *ext, char *path); + | ~~~~~~^~~ +sequencer.c:709:17: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 709 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~ +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +sequencer.c:709:39: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 709 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:709:62: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 709 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:710:25: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 710 | dialog_bindkeyboard(&sequencer_file_keyboard); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +sequencer.c:711:21: warning: ISO C forbids passing argument 1 of 'dialog_binddrag' between function pointer and 'void *' [-Wpedantic] + 711 | dialog_binddrag(&sequencer_file_drag); + | ^~~~~~~~~~~~~~~~~~~~ +dialog.h:31:28: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 31 | void dialog_binddrag(void *dragfunc); + | ~~~~~~^~~~~~~~ +sequencer.c:716:30: warning: passing argument 1 of 'dotfile_getvalue' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 716 | songdir=dotfile_getvalue("songFileDir"); + | ^~~~~~~~~~~~~ +dotfile.h:18:30: note: expected 'char *' but argument is of type 'const char *' + 18 | char *dotfile_getvalue(char *key); + | ~~~~~~^~~ +sequencer.c:717:39: warning: passing argument 2 of 'filedialog_open' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 717 | filedialog_open(&songfd[FD_LOAD], "ksong", songdir); + | ^~~~~~~ +filedialog.h:58:44: note: expected 'char *' but argument is of type 'const char *' + 58 | void filedialog_open(filedialog *fd, char *ext, char *path); + | ~~~~~~^~~ +sequencer.c:719:17: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 719 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~ +dialog.h:22:24: note: expected 'void *' but argument is of type 'void (*)(void)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~ +sequencer.c:719:39: warning: ISO C forbids passing argument 2 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 719 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:36: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:719:62: warning: ISO C forbids passing argument 3 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] + 719 | dialog_open(&sequencer_draw_file, &sequencer_file_hover, &sequencer_file_click); + | ^~~~~~~~~~~~~~~~~~~~~ +dialog.h:22:49: note: expected 'void *' but argument is of type 'void (*)(int, int, int, int)' + 22 | void dialog_open(void *draw, void *hover, void *click); + | ~~~~~~^~~~~ +sequencer.c:720:25: warning: ISO C forbids passing argument 1 of 'dialog_bindkeyboard' between function pointer and 'void *' [-Wpedantic] + 720 | dialog_bindkeyboard(&sequencer_file_keyboard); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +dialog.h:23:32: note: expected 'void *' but argument is of type 'void (*)(unsigned char, int, int)' + 23 | void dialog_bindkeyboard(void *kbfunc); + | ~~~~~~^~~~~~ +sequencer.c:721:21: warning: ISO C forbids passing argument 1 of 'dialog_binddrag' between function pointer and 'void *' [-Wpedantic] + 721 | dialog_binddrag(&sequencer_file_drag); + | ^~~~~~~~~~~~~~~~~~~~ +dialog.h:31:28: note: expected 'void *' but argument is of type 'void (*)(int, int)' + 31 | void dialog_binddrag(void *dragfunc); + | ~~~~~~^~~~~~~~ +sequencer.c:736:31: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 736 | n=i+seq_repeat[j][i]*pattlen[seq_pattern[j][i]]; + | ^ +sequencer.c:736:14: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 736 | n=i+seq_repeat[j][i]*pattlen[seq_pattern[j][i]]; + | ^ +sequencer.c:736:13: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 736 | n=i+seq_repeat[j][i]*pattlen[seq_pattern[j][i]]; + | ^ +sequencer.c:690:3: warning: switch missing default case [-Wswitch-default] + 690 | switch (key) { + | ^~~~~~ +sequencer.c:682:48: warning: unused parameter 'x' [-Wunused-parameter] + 682 | void sequencer_keyboard(unsigned char key, int x, int y) + | ~~~~^ +sequencer.c:682:55: warning: unused parameter 'y' [-Wunused-parameter] + 682 | void sequencer_keyboard(unsigned char key, int x, int y) + | ~~~~^ +sequencer.c: In function 'sequencer_draw': +sequencer.c:759:44: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 759 | glVertex2f(SEQUENCER_X, SEQUENCER_Y+(j*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:760:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 760 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(j*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:760:83: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 760 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(j*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:768:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 768 | glVertex2f(SEQUENCER_X, SEQUENCER_Y+((seqch+2)*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:769:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 769 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+((seqch+2)*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:769:81: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 769 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+((seqch+2)*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:770:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 770 | glVertex2f(SEQUENCER_X, SEQUENCER_Y+((seqch+3)*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:771:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 771 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+((seqch+3)*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:771:81: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 771 | glVertex2f(SEQUENCER_X+(seqsonglen-seq_start)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+((seqch+3)*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:784:40: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 784 | render_text(tmps, 2.5+SEQUENCER_X+(i*SEQUENCER_CELLWIDTH), round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT)), 2, 0xffa0a0a0, 0); + | ^ +sequencer.c:784:83: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 784 | render_text(tmps, 2.5+SEQUENCER_X+(i*SEQUENCER_CELLWIDTH), round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT)), 2, 0xffa0a0a0, 0); + | ^ +sequencer.c:784:66: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 784 | render_text(tmps, 2.5+SEQUENCER_X+(i*SEQUENCER_CELLWIDTH), round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT)), 2, 0xffa0a0a0, 0); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +sequencer.c:789:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 789 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y)); + | ^ +sequencer.c:791:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 791 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); + | ^ +sequencer.c:791:70: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 791 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); + | ^ +sequencer.c:791:53: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 791 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +sequencer.c:793:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 793 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); // was seqch+3 + | ^ +sequencer.c:793:70: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 793 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); // was seqch+3 + | ^ +sequencer.c:793:53: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 793 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, round(SEQUENCER_Y+((seqch+4)*SEQUENCER_CELLHEIGHT))); // was seqch+3 + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +sequencer.c:804:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 804 | sx=SEQUENCER_X+(j-seq_start)*SEQUENCER_CELLWIDTH -1.5; + | ^ +sequencer.c:805:28: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 805 | sl=seq_repeat[i][j]*pattlen[seq_pattern[i][j]]*SEQUENCER_CELLWIDTH; + | ^ +sequencer.c:805:12: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 805 | sl=seq_repeat[i][j]*pattlen[seq_pattern[i][j]]*SEQUENCER_CELLWIDTH; + | ^~~~~~~~~~ +sequencer.c:807:16: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 807 | if ((sx+sl) > SEQUENCER_X) { + | ^ +sequencer.c:810:15: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 810 | sl-=(SEQUENCER_X-sx); + | ^~ +sequencer.c:810:17: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] + 810 | sl-=(SEQUENCER_X-sx); + | ^ +sequencer.c:816:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 816 | glVertex2f( sx+1, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); + | ^ +sequencer.c:817:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 817 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); + | ^ +sequencer.c:817:43: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 817 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); + | ^ +sequencer.c:818:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 818 | glVertex2f( sx+sl, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); + | ^ +sequencer.c:818:43: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 818 | glVertex2f( sx+sl, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); + | ^ +sequencer.c:819:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 819 | glVertex2f( sx+1, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); + | ^ +sequencer.c:822:48: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 822 | render_text(tmps, sx+2, SEQUENCER_Y+(i+1)*SEQUENCER_CELLHEIGHT-((SEQUENCER_CELLHEIGHT-14)/2)+2.5, 2, 0x80c0c0c0, 0); + | ^ +sequencer.c:829:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 829 | glVertex2f( sx+1, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); + | ^ +sequencer.c:830:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 830 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); + | ^ +sequencer.c:830:43: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 830 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); + | ^ +sequencer.c:831:27: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 831 | glVertex2f( sx+sl, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); + | ^ +sequencer.c:831:43: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 831 | glVertex2f( sx+sl, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); + | ^ +sequencer.c:832:45: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 832 | glVertex2f( sx+1, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); + | ^ +sequencer.c:838:24: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 838 | if ( (k%pattlen[seq_pattern[i][j]])==0 ) { + | ^ +sequencer.c:843:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 843 | glVertex2f( sx+(sk*SEQUENCER_CELLWIDTH)+0.5, SEQUENCER_Y+ i*SEQUENCER_CELLHEIGHT); + | ^ +sequencer.c:843:75: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 843 | glVertex2f( sx+(sk*SEQUENCER_CELLWIDTH)+0.5, SEQUENCER_Y+ i*SEQUENCER_CELLHEIGHT); + | ^ +sequencer.c:844:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 844 | glVertex2f( sx+(sk*SEQUENCER_CELLWIDTH)+0.5, SEQUENCER_Y+ i*SEQUENCER_CELLHEIGHT + (0.2*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:844:75: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 844 | glVertex2f( sx+(sk*SEQUENCER_CELLWIDTH)+0.5, SEQUENCER_Y+ i*SEQUENCER_CELLHEIGHT + (0.2*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:845:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 845 | glVertex2f( sx+(sk*SEQUENCER_CELLWIDTH)+0.5, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT + (0.8*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:845:75: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 845 | glVertex2f( sx+(sk*SEQUENCER_CELLWIDTH)+0.5, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT + (0.8*SEQUENCER_CELLHEIGHT)); + | ^ +sequencer.c:846:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 846 | glVertex2f( sx+(sk*SEQUENCER_CELLWIDTH)+0.5, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); + | ^ +sequencer.c:846:75: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 846 | glVertex2f( sx+(sk*SEQUENCER_CELLWIDTH)+0.5, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); + | ^ +sequencer.c:864:21: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 864 | sx=SEQUENCER_X+(j-seq_start)*SEQUENCER_CELLWIDTH; + | ^ +sequencer.c:865:26: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion] + 865 | sl=seq_repeat[i][j]*pattlen[seq_pattern[i][j]]*SEQUENCER_CELLWIDTH; + | ^ +sequencer.c:865:10: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion] + 865 | sl=seq_repeat[i][j]*pattlen[seq_pattern[i][j]]*SEQUENCER_CELLWIDTH; + | ^~~~~~~~~~ +main.c: In function 'audio_playback': +main.c:222:7: warning: function might be candidate for attribute 'noreturn' [-Wsuggest-attribute=noreturn] + 222 | void *audio_playback(void *param) + | ^~~~~~~~~~~~~~ +sequencer.c:867:14: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 867 | if ((sx+sl) > SEQUENCER_X) { + | ^ +sequencer.c:870:13: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 870 | sl-=(SEQUENCER_X-sx); + | ^~ +main.c: In function 'audio_renderer': +main.c:233:7: warning: function might be candidate for attribute 'noreturn' [-Wsuggest-attribute=noreturn] + 233 | void *audio_renderer(void *param) + | ^~~~~~~~~~~~~~ +sequencer.c:870:15: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] + 870 | sl-=(SEQUENCER_X-sx); + | ^ +sequencer.c:882:43: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 882 | glVertex2f( sx+1, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); + | ^ +sequencer.c:883:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 883 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); + | ^ +sequencer.c:883:41: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 883 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); + | ^ +sequencer.c:884:25: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 884 | glVertex2f( sx+sl, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); + | ^ +sequencer.c:884:41: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 884 | glVertex2f( sx+sl, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); + | ^ +sequencer.c:885:43: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 885 | glVertex2f( sx+1, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); + | ^ +sequencer.c:896:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 896 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start) *SEQUENCER_CELLWIDTH, SEQUENCER_Y+ seq_hover_ch *SEQUENCER_CELLHEIGHT ); + | ^ +sequencer.c:896:92: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 896 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start) *SEQUENCER_CELLWIDTH, SEQUENCER_Y+ seq_hover_ch *SEQUENCER_CELLHEIGHT ); + | ^ +sequencer.c:897:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 897 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start+1)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+ seq_hover_ch *SEQUENCER_CELLHEIGHT ); + | ^ +sequencer.c:897:92: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 897 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start+1)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+ seq_hover_ch *SEQUENCER_CELLHEIGHT ); + | ^ sequencer.c:898:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] 898 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start+1)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(1+seq_hover_ch)*SEQUENCER_CELLHEIGHT ); | ^ +main.c: In function 'cleanup': +main.c:322:6: warning: function might be candidate for attribute 'noreturn' [-Wsuggest-attribute=noreturn] + 322 | void cleanup(void) + | ^~~~~~~ sequencer.c:898:92: warning: conversion from 'int' to 'float' may change value [-Wconversion] 898 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start+1)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(1+seq_hover_ch)*SEQUENCER_CELLHEIGHT ); | ^ @@ -5320,47 +5450,12 @@ sequencer.c:912:90: warning: conversion from 'int' to 'float' may change value [-Wconversion] 912 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start+1)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(3+seqch)*SEQUENCER_CELLHEIGHT ); | ^ -fileops.c: In function 'load_chunk': -fileops.c:468:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 468 | r=fread(fchunktype, sizeof(char), 4, f); - | ^~~~~ -fileops.c:470:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 470 | r=fread(&fchunklen, sizeof(u32), 1, f); - | ^~~~~ -fileops.c:477:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 477 | r=fread(cbuffer, sizeof(char), fchunklen, f); - | ^~~~~ -fileops.c: In function 'probe_chunk': -fileops.c:497:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 497 | r=fread(chunktype, sizeof(char), 4, f); - | ^~~~~ -fileops.c:499:5: warning: conversion from 'size_t' {aka 'long unsigned int'} to 'int' may change value [-Wconversion] - 499 | r=fread(&fchunklen, sizeof(u32), 1, f); - | ^~~~~ -fileops.c: In function 'synth_colorize': -fileops.c:568:58: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion] - 568 | for(m=0;mg.gl_pathv[fd->sliderpos+fd->listhover], strlen(fd->g.gl_pathv[fd->sliderpos+fd->listhover])-1); - | ^ -filedialog.c:203:69: note: length computed here - 203 | strncpy(ttmps, fd->g.gl_pathv[fd->sliderpos+fd->listhover], strlen(fd->g.gl_pathv[fd->sliderpos+fd->listhover])-1); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -filedialog.c:205:9: warning: '__builtin_strncpy' specified bound 255 equals destination size [-Wstringop-truncation] - 205 | strncpy(tmps, rindex(ttmps, '/')+1, 255); - | ^ -filedialog.c:226:9: warning: '__builtin_strncpy' specified bound 255 equals destination size [-Wstringop-truncation] - 226 | strncpy(fd->fname, strrchr(fd->g.gl_pathv[fd->sliderpos+fd->listhover], '/')+1, 255); - | ^ -filedialog.c:180:7: warning: '__builtin___strncat_chk' specified bound 512 equals destination size [-Wstringop-truncation] - 180 | strncat(fd->fullpath, fd->fmask+1, 512); - | ^ sequencer.c:1166:44: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1166 | if (state==GLUT_DOWN && !hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ -In function 'strncat', - inlined from 'filedialog_click' at filedialog.c:177:5: -/usr/include/x86_64-linux-gnu/bits/string_fortified.h:138:10: warning: '__builtin___strncat_chk' specified bound 512 equals destination size [-Wstringop-overflow=] - 138 | return __builtin___strncat_chk (__dest, __src, __len, - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 139 | __glibc_objsize (__dest)); - | ~~~~~~~~~~~~~~~~~~~~~~~~~ -In function 'strncat', - inlined from 'filedialog_click' at filedialog.c:180:7: -/usr/include/x86_64-linux-gnu/bits/string_fortified.h:138:10: warning: '__builtin___strncat_chk' specified bound 512 equals destination size [-Wstringop-overflow=] - 138 | return __builtin___strncat_chk (__dest, __src, __len, - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 139 | __glibc_objsize (__dest)); - | ~~~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c:1170:70: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1170 | if (button==GLUT_RIGHT_BUTTON && state==GLUT_DOWN && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ @@ -5727,6 +5788,30 @@ 1170 | if (button==GLUT_RIGHT_BUTTON && state==GLUT_DOWN && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ sequencer.c: In function 'sequencer_pattern_keyboard': +In file included from widgets.h:23, + from widgets.c:14: +modules.h:152:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 152 | void calc_supersaw_tables(); + | ^~~~ +widgets.c: In function 'draw_module': +widgets.c:51:76: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 51 | render_text((char*)modTypeNames[s->type], x+1, round(y+(MODULE_SIZE/5))+1, 2, 0xff000000, 1); + | ~~~~~~~~~~~~~~~~~~~~~~~~^~ +widgets.c:52:50: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 52 | render_text((char*)modTypeNames[s->type], x, round(y+(MODULE_SIZE/5)), 2, 0xffffffff, 1); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +widgets.c:69:34: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 69 | render_text(s->label, x+1, round(y+(MODULE_SIZE/3)+5), 2, 0xff000000, 1); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +widgets.c:70:32: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 70 | render_text(s->label, x, round(y+(MODULE_SIZE/3)+4), 2, 0xffffffff, 1); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +widgets.c:72:54: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 72 | render_text((char*)modTypeNames[s->type], x+1, round(y+(MODULE_SIZE/3)+5), 2, 0xff000000, 1); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +widgets.c:73:52: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 73 | render_text((char*)modTypeNames[s->type], x, round(y+(MODULE_SIZE/3)+4), 2, 0xffffffff, 1); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c:1201:56: warning: unused parameter 'x' [-Wunused-parameter] 1201 | void sequencer_pattern_keyboard(unsigned char key, int x, int y) | ~~~~^ @@ -5758,18 +5843,78 @@ widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); | ~~~~~~^~~~~ +widgets.c:83:72: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] + 83 | (char*)modInputNames[type][i], node_labelpos[modInputCount[type]][i]); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +widgets.c:89:63: warning: passing argument 4 of 'draw_signal_node' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 89 | draw_signal_node(x+MODULE_HALF+0.5, y+OUTPUT_OFFSET, 3, "Out", 1); + | ^~~~~ +widgets.h:29:57: note: expected 'char *' but argument is of type 'const char *' + 29 | void draw_signal_node(float x, float y, int type, char* label, int align); + | ~~~~~~^~~~~ +widgets.c:91:63: warning: passing argument 4 of 'draw_signal_node' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 91 | draw_signal_node(x+MODULE_HALF+0.5, y+OUTPUT_OFFSET, 1, "Out", 1); + | ^~~~~ +widgets.h:29:57: note: expected 'char *' but argument is of type 'const char *' + 29 | void draw_signal_node(float x, float y, int type, char* label, int align); + | ~~~~~~^~~~~ +widgets.c: In function 'draw_signal_node': +widgets.c:119:18: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 119 | glVertex3f(x + cos(f*2*M_PI)*(r*0.75), y + sin(f*2*M_PI)*(r*0.75), 0.0f); + | ~~^~~~~~~~~~~~~~~~~~~~~~~~ +widgets.c:119:46: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 119 | glVertex3f(x + cos(f*2*M_PI)*(r*0.75), y + sin(f*2*M_PI)*(r*0.75), 0.0f); + | ~~^~~~~~~~~~~~~~~~~~~~~~~~ +widgets.c: In function 'draw_knob': +widgets.c:156:7: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] + 156 | c=0.2+(1.0f+cos(0.6+f*2*M_PI))/(2.0); + | ^~~ +widgets.c:158:18: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 158 | glVertex3f(x + cos(f*2*M_PI)*KNOB_RADIUS, y + sin(f*2*M_PI)*KNOB_RADIUS, 0.0f); +widgets.c:158:49: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 158 | glVertex3f(x + cos(f*2*M_PI)*KNOB_RADIUS, y + sin(f*2*M_PI)*KNOB_RADIUS, 0.0f); +widgets.c:159:18: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 159 | glVertex3f(x + cos(f*2*M_PI)*(KNOB_RADIUS*0.75), y + sin(f*2*M_PI)*(KNOB_RADIUS*0.75), 0.0f); + | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +widgets.c:159:56: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 159 | glVertex3f(x + cos(f*2*M_PI)*(KNOB_RADIUS*0.75), y + sin(f*2*M_PI)*(KNOB_RADIUS*0.75), 0.0f); + | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +widgets.c:169:18: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 169 | glVertex3f(x + cos(f*2*M_PI)*(KNOB_RADIUS*0.75), y + sin(f*2*M_PI)*(KNOB_RADIUS*0.75), 0.0f); + | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +widgets.c:169:56: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 169 | glVertex3f(x + cos(f*2*M_PI)*(KNOB_RADIUS*0.75), y + sin(f*2*M_PI)*(KNOB_RADIUS*0.75), 0.0f); + | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +widgets.c:177:33: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 177 | glVertex2f(x,y); glVertex2f(x + cos(setting*2*M_PI)*KNOB_RADIUS, y + sin(setting*2*M_PI)*KNOB_RADIUS); +widgets.c:177:70: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 177 | glVertex2f(x,y); glVertex2f(x + cos(setting*2*M_PI)*KNOB_RADIUS, y + sin(setting*2*M_PI)*KNOB_RADIUS); +widgets.c:182:33: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 182 | glVertex2f(x,y); glVertex2f(x + cos(setting*2*M_PI)*KNOB_RADIUS, y + sin(setting*2*M_PI)*KNOB_RADIUS); +widgets.c:182:70: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] + 182 | glVertex2f(x,y); glVertex2f(x + cos(setting*2*M_PI)*KNOB_RADIUS, y + sin(setting*2*M_PI)*KNOB_RADIUS); sequencer.c:1236:59: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 1236 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2)+4, 8, 180, "Oscillator hard restart", seq_ui[B_VCORESTART]); | ^~~~~~~~~~~~~~~~~~~~~~~~~ widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); | ~~~~~~^~~~~ +widgets.c: In function 'draw_text': +widgets.c:198:8: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 198 | xd += glutBitmapWidth(MODULE_FONT,*c); + | ^~ +widgets.c:203:3: warning: switch missing default case [-Wswitch-default] + 203 | switch (align) { + | ^~~~~~ sequencer.c:1237:59: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 1237 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2)+20, 8, 180, "LFO hard restart", seq_ui[B_LFORESTART]); | ^~~~~~~~~~~~~~~~~~ widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); | ~~~~~~^~~~~ +widgets.c:212:8: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 212 | x1 += glutBitmapWidth(MODULE_FONT,*c); + | ^~ sequencer.c: In function 'sequencer_channel_hover': sequencer.c:1243:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1243 | seq_ui[B_CHAN_NEXTSYNTH]=hovertest_box(x, y, (DS_WIDTH/2)+102, (DS_HEIGHT/2)-36, 16, 16); @@ -5798,30 +5943,107 @@ sequencer.c:1250:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1250 | seq_ui[B_LFORESTART]=hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2)+20, 8, 180); | ^ +widgets.c: In function 'draw_kboct': sequencer.c:1250:41: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1250 | seq_ui[B_LFORESTART]=hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2)+20, 8, 180); | ^ +widgets.c:455:22: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 455 | glVertex2f(2, y-j*kh); glVertex2f(2+kw, y-j*kh); + | ^ sequencer.c: In function 'sequencer_channel_click': +widgets.c:455:48: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 455 | glVertex2f(2, y-j*kh); glVertex2f(2+kw, y-j*kh); + | ^ +widgets.c:456:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 456 | glVertex2f(2+kw, y-(j+1)*kh); glVertex2f(2, y-(j+1)*kh); + | ^ sequencer.c:1257:42: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1257 | if (state==GLUT_DOWN && !hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ +widgets.c:456:56: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 456 | glVertex2f(2+kw, y-(j+1)*kh); glVertex2f(2, y-(j+1)*kh); + | ^ +widgets.c:460:22: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 460 | glVertex2f(2, y-j*kh); glVertex2f(2+kw, y-j*kh); + | ^ sequencer.c:1257:44: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1257 | if (state==GLUT_DOWN && !hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ +widgets.c:460:48: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 460 | glVertex2f(2, y-j*kh); glVertex2f(2+kw, y-j*kh); + | ^ +widgets.c:461:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 461 | glVertex2f(2+kw, y-(j+1)*kh+1); glVertex2f(2, y-(j+1)*kh+1); + | ^ +widgets.c:461:58: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 461 | glVertex2f(2+kw, y-(j+1)*kh+1); glVertex2f(2, y-(j+1)*kh+1); + | ^ sequencer.c:1291:50: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1291 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ +widgets.c:472:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 472 | glVertex2f(2, y-(j+0.5)*kh-(0.2*kh)); + | ^ +widgets.c:473:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 473 | glVertex2f(2+kw*0.6, y-(j+0.5)*kh-(0.2*kh)); + | ^ sequencer.c:1291:52: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1291 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ +widgets.c:474:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 474 | glVertex2f(2+kw*0.6, y-(j+1.5)*kh+(0.2*kh)); + | ^ sequencer.c: In function 'sequencer_channel_keyboard': +widgets.c:475:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 475 | glVertex2f(2, y-(j+1.5)*kh+(0.2*kh)); + | ^ +widgets.c:479:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 479 | glVertex2f(2, y-(j+0.5)*kh-(0.2*kh)); + | ^ sequencer.c:1298:56: warning: unused parameter 'x' [-Wunused-parameter] 1298 | void sequencer_channel_keyboard(unsigned char key, int x, int y) | ~~~~^ +widgets.c:480:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 480 | glVertex2f(2+kw*0.6, y-(j+0.5)*kh-(0.2*kh)); + | ^ sequencer.c:1298:63: warning: unused parameter 'y' [-Wunused-parameter] 1298 | void sequencer_channel_keyboard(unsigned char key, int x, int y) | ~~~~^ +widgets.c:481:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 481 | glVertex2f(2+kw*0.6, y-(j+1.5)*kh+(0.2*kh)); + | ^ sequencer.c: In function 'sequencer_draw_render': +widgets.c:482:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 482 | glVertex2f(2, y-(j+1.5)*kh+(0.2*kh)); + | ^ +widgets.c: In function 'draw_kbhoct': +widgets.c:507:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 507 | glVertex2f(x+j*kw, y); + | ^ +widgets.c:508:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 508 | glVertex2f(x+(j+1)*kw, y); + | ^ +widgets.c:509:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 509 | glVertex2f(x+(j+1)*kw, y+kh); + | ^ +widgets.c:510:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 510 | glVertex2f(x+j*kw, y+kh); + | ^ +widgets.c:514:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 514 | glVertex2f(x+j*kw, y); + | ^ +widgets.c:515:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 515 | glVertex2f(x+(j+1)*kw, y); + | ^ +widgets.c:516:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 516 | glVertex2f(x+(j+1)*kw, y+kh); + | ^ +widgets.c:517:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 517 | glVertex2f(x+j*kw, y+kh); + | ^ +widgets.c:522:28: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 522 | render_text(tmps, x+j*kw+8, y+kh-4, 2, 0xff303030, 1); + | ^ sequencer.c:1326:17: warning: ISO C forbids passing argument 1 of 'dialog_open' between function pointer and 'void *' [-Wpedantic] 1326 | dialog_open(&sequencer_draw_preview, &sequencer_preview_hover, &sequencer_preview_click); | ^~~~~~~~~~~~~~~~~~~~~~~ @@ -5858,6 +6080,33 @@ widgets.h:38:71: note: expected 'char *' but argument is of type 'const char *' 38 | void draw_textbox(float x, float y, float height, float length, char *label, int type); | ~~~~~~^~~~~ +widgets.c:537:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 537 | glVertex2f(x+j*kw+(0.7*kw), y); + | ^ +widgets.c:538:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 538 | glVertex2f(x+(j+1)*kw+(0.3*kw), y); + | ^ +widgets.c:539:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 539 | glVertex2f(x+(j+1)*kw+(0.3*kw), y+(kh*0.5)); + | ^ +widgets.c:540:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 540 | glVertex2f(x+j*kw+(0.7*kw), y+(kh*0.5)); + | ^ +widgets.c:544:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 544 | glVertex2f(x+j*kw+(0.7*kw), y); + | ^ +widgets.c:545:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 545 | glVertex2f(x+(j+1)*kw+(0.3*kw), y); + | ^ +widgets.c:546:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 546 | glVertex2f(x+(j+1)*kw+(0.3*kw), y+(kh*0.5)); + | ^ +widgets.c:547:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 547 | glVertex2f(x+j*kw+(0.7*kw), y+(kh*0.5)); + | ^ +widgets.c:552:28: warning: conversion from 'int' to 'float' may change value [-Wconversion] + 552 | render_text(tmps, x+j*kw+(0.7*kw)+5, y+0.5*kh-5, 2, 0xffc0c0c0, 1); + | ^ sequencer.c: In function 'sequencer_render_hover': sequencer.c:1351:33: warning: unused parameter 'x' [-Wunused-parameter] 1351 | void sequencer_render_hover(int x, int y) @@ -5879,24 +6128,6 @@ sequencer.c:1371:62: warning: unused parameter 'y' [-Wunused-parameter] 1371 | void sequencer_render_keyboard(unsigned char key, int x, int y) | ~~~~^ -filedialog.c: In function 'filedialog_keyboard': -filedialog.c:250:7: warning: '__builtin___strncat_chk' specified bound 512 equals destination size [-Wstringop-truncation] - 250 | strncat(fd->fullpath, fd->fmask+1, 512); - | ^ -In function 'strncat', - inlined from 'filedialog_keyboard' at filedialog.c:247:5: -/usr/include/x86_64-linux-gnu/bits/string_fortified.h:138:10: warning: '__builtin___strncat_chk' specified bound 512 equals destination size [-Wstringop-overflow=] - 138 | return __builtin___strncat_chk (__dest, __src, __len, - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 139 | __glibc_objsize (__dest)); - | ~~~~~~~~~~~~~~~~~~~~~~~~~ -In function 'strncat', - inlined from 'filedialog_keyboard' at filedialog.c:250:7: -/usr/include/x86_64-linux-gnu/bits/string_fortified.h:138:10: warning: '__builtin___strncat_chk' specified bound 512 equals destination size [-Wstringop-overflow=] - 138 | return __builtin___strncat_chk (__dest, __src, __len, - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 139 | __glibc_objsize (__dest)); - | ~~~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c: In function 'sequencer_draw_preview': sequencer.c:1402:66: warning: passing argument 5 of 'draw_textbox' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 1402 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 210, (DS_WIDTH*0.8), "", 0); @@ -5913,6 +6144,17 @@ sequencer.c:1418:56: warning: conversion from 'long int' to 'float' may change value [-Wconversion] 1418 | spos=(long)(((float)(i) / ((DS_WIDTH*0.8f)-20.0f)) * render_bufferlen); | ^ +widgets.c: In function 'hovertest_hslider': +widgets.c:709:21: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] + 709 | if (hit) return (x-slx); + | ~~^~~~~ +widgets.c: In function 'textbox_edit': +widgets.c:738:20: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] + 738 | strlen(text)>", seq_ui[B_TIME_INC]); | ^~~~ widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' 37 | void draw_button(float x, float y, float size, char *label, int type); | ~~~~~~^~~~~ -widgets.c: In function 'draw_module': -widgets.c:51:76: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 51 | render_text((char*)modTypeNames[s->type], x+1, round(y+(MODULE_SIZE/5))+1, 2, 0xff000000, 1); - | ~~~~~~~~~~~~~~~~~~~~~~~~^~ -widgets.c:52:50: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 52 | render_text((char*)modTypeNames[s->type], x, round(y+(MODULE_SIZE/5)), 2, 0xffffffff, 1); - | ^~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c:1639:55: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 1639 | draw_button((DS_WIDTH/2)-102, (DS_HEIGHT/2)-16, 16, "<<", seq_ui[B_TIME_DEC]); | ^~~~ widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' 37 | void draw_button(float x, float y, float size, char *label, int type); | ~~~~~~^~~~~ -widgets.c:69:34: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 69 | render_text(s->label, x+1, round(y+(MODULE_SIZE/3)+5), 2, 0xff000000, 1); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~ -widgets.c:70:32: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 70 | render_text(s->label, x, round(y+(MODULE_SIZE/3)+4), 2, 0xffffffff, 1); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~ -widgets.c:72:54: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 72 | render_text((char*)modTypeNames[s->type], x+1, round(y+(MODULE_SIZE/3)+5), 2, 0xff000000, 1); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~ -widgets.c:73:52: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 73 | render_text((char*)modTypeNames[s->type], x, round(y+(MODULE_SIZE/3)+4), 2, 0xffffffff, 1); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c:1641:3: warning: switch missing default case [-Wswitch-default] 1641 | switch (beatdiv) { | ^~~~~~ -widgets.c:83:72: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] - 83 | (char*)modInputNames[type][i], node_labelpos[modInputCount[type]][i]); - | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ -widgets.c:89:63: warning: passing argument 4 of 'draw_signal_node' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 89 | draw_signal_node(x+MODULE_HALF+0.5, y+OUTPUT_OFFSET, 3, "Out", 1); - | ^~~~~ -widgets.h:29:57: note: expected 'char *' but argument is of type 'const char *' - 29 | void draw_signal_node(float x, float y, int type, char* label, int align); - | ~~~~~~^~~~~ -widgets.c:91:63: warning: passing argument 4 of 'draw_signal_node' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 91 | draw_signal_node(x+MODULE_HALF+0.5, y+OUTPUT_OFFSET, 1, "Out", 1); - | ^~~~~ -widgets.h:29:57: note: expected 'char *' but argument is of type 'const char *' - 29 | void draw_signal_node(float x, float y, int type, char* label, int align); - | ~~~~~~^~~~~ sequencer.c:1649:54: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 1649 | draw_button((DS_WIDTH/2)+102, (DS_HEIGHT/2)+4, 16, ">>", seq_ui[B_DIV_INC]); | ^~~~ widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' 37 | void draw_button(float x, float y, float size, char *label, int type); | ~~~~~~^~~~~ -widgets.c: In function 'draw_signal_node': -widgets.c:119:18: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 119 | glVertex3f(x + cos(f*2*M_PI)*(r*0.75), y + sin(f*2*M_PI)*(r*0.75), 0.0f); - | ~~^~~~~~~~~~~~~~~~~~~~~~~~ -widgets.c:119:46: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 119 | glVertex3f(x + cos(f*2*M_PI)*(r*0.75), y + sin(f*2*M_PI)*(r*0.75), 0.0f); - | ~~^~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c:1650:54: warning: passing argument 4 of 'draw_button' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 1650 | draw_button((DS_WIDTH/2)-102, (DS_HEIGHT/2)+4, 16, "<<", seq_ui[B_DIV_DEC]); | ^~~~ -widgets.c: In function 'draw_knob': widgets.h:37:54: note: expected 'char *' but argument is of type 'const char *' 37 | void draw_button(float x, float y, float size, char *label, int type); | ~~~~~~^~~~~ -widgets.c:156:7: warning: conversion from 'double' to 'float' may change value [-Wfloat-conversion] - 156 | c=0.2+(1.0f+cos(0.6+f*2*M_PI))/(2.0); - | ^~~ sequencer.c: In function 'sequencer_bpm_hover': -widgets.c:158:18: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 158 | glVertex3f(x + cos(f*2*M_PI)*KNOB_RADIUS, y + sin(f*2*M_PI)*KNOB_RADIUS, 0.0f); -widgets.c:158:49: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 158 | glVertex3f(x + cos(f*2*M_PI)*KNOB_RADIUS, y + sin(f*2*M_PI)*KNOB_RADIUS, 0.0f); -widgets.c:159:18: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 159 | glVertex3f(x + cos(f*2*M_PI)*(KNOB_RADIUS*0.75), y + sin(f*2*M_PI)*(KNOB_RADIUS*0.75), 0.0f); - | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -widgets.c:159:56: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 159 | glVertex3f(x + cos(f*2*M_PI)*(KNOB_RADIUS*0.75), y + sin(f*2*M_PI)*(KNOB_RADIUS*0.75), 0.0f); - | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c:1657:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1657 | bpm_kbfocus|=hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2)-36, 16, 180); | ^ -widgets.c:169:18: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 169 | glVertex3f(x + cos(f*2*M_PI)*(KNOB_RADIUS*0.75), y + sin(f*2*M_PI)*(KNOB_RADIUS*0.75), 0.0f); - | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -widgets.c:169:56: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 169 | glVertex3f(x + cos(f*2*M_PI)*(KNOB_RADIUS*0.75), y + sin(f*2*M_PI)*(KNOB_RADIUS*0.75), 0.0f); - | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -widgets.c:177:33: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 177 | glVertex2f(x,y); glVertex2f(x + cos(setting*2*M_PI)*KNOB_RADIUS, y + sin(setting*2*M_PI)*KNOB_RADIUS); -widgets.c:177:70: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 177 | glVertex2f(x,y); glVertex2f(x + cos(setting*2*M_PI)*KNOB_RADIUS, y + sin(setting*2*M_PI)*KNOB_RADIUS); -widgets.c:182:33: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 182 | glVertex2f(x,y); glVertex2f(x + cos(setting*2*M_PI)*KNOB_RADIUS, y + sin(setting*2*M_PI)*KNOB_RADIUS); -widgets.c:182:70: warning: conversion from 'double' to 'GLfloat' {aka 'float'} may change value [-Wfloat-conversion] - 182 | glVertex2f(x,y); glVertex2f(x + cos(setting*2*M_PI)*KNOB_RADIUS, y + sin(setting*2*M_PI)*KNOB_RADIUS); -widgets.c: In function 'draw_text': -widgets.c:198:8: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 198 | xd += glutBitmapWidth(MODULE_FONT,*c); - | ^~ -widgets.c:203:3: warning: switch missing default case [-Wswitch-default] - 203 | switch (align) { - | ^~~~~~ -widgets.c:212:8: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 212 | x1 += glutBitmapWidth(MODULE_FONT,*c); - | ^~ sequencer.c:1657:33: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1657 | bpm_kbfocus|=hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2)-36, 16, 180); | ^ sequencer.c:1658:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1658 | seq_ui[B_BPM_INC]=hovertest_box(x, y, (DS_WIDTH/2)+102, (DS_HEIGHT/2)-36, 16, 16); | ^ -widgets.c: In function 'draw_kboct': -widgets.c:455:22: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 455 | glVertex2f(2, y-j*kh); glVertex2f(2+kw, y-j*kh); - | ^ sequencer.c:1658:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1658 | seq_ui[B_BPM_INC]=hovertest_box(x, y, (DS_WIDTH/2)+102, (DS_HEIGHT/2)-36, 16, 16); | ^ -widgets.c:455:48: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 455 | glVertex2f(2, y-j*kh); glVertex2f(2+kw, y-j*kh); - | ^ -widgets.c:456:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 456 | glVertex2f(2+kw, y-(j+1)*kh); glVertex2f(2, y-(j+1)*kh); - | ^ -widgets.c:456:56: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 456 | glVertex2f(2+kw, y-(j+1)*kh); glVertex2f(2, y-(j+1)*kh); - | ^ sequencer.c:1659:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1659 | seq_ui[B_BPM_DEC]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)-36, 16, 16); | ^ -widgets.c:460:22: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 460 | glVertex2f(2, y-j*kh); glVertex2f(2+kw, y-j*kh); - | ^ -widgets.c:460:48: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 460 | glVertex2f(2, y-j*kh); glVertex2f(2+kw, y-j*kh); - | ^ -widgets.c:461:29: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 461 | glVertex2f(2+kw, y-(j+1)*kh+1); glVertex2f(2, y-(j+1)*kh+1); - | ^ sequencer.c:1659:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1659 | seq_ui[B_BPM_DEC]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)-36, 16, 16); | ^ -widgets.c:461:58: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 461 | glVertex2f(2+kw, y-(j+1)*kh+1); glVertex2f(2, y-(j+1)*kh+1); - | ^ -widgets.c:472:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 472 | glVertex2f(2, y-(j+0.5)*kh-(0.2*kh)); - | ^ sequencer.c:1660:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1660 | seq_ui[B_TIME_INC]=hovertest_box(x, y, (DS_WIDTH/2)+102, (DS_HEIGHT/2)-16, 16, 16); | ^ -widgets.c:473:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 473 | glVertex2f(2+kw*0.6, y-(j+0.5)*kh-(0.2*kh)); - | ^ -widgets.c:474:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 474 | glVertex2f(2+kw*0.6, y-(j+1.5)*kh+(0.2*kh)); - | ^ -widgets.c:475:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 475 | glVertex2f(2, y-(j+1.5)*kh+(0.2*kh)); - | ^ sequencer.c:1660:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1660 | seq_ui[B_TIME_INC]=hovertest_box(x, y, (DS_WIDTH/2)+102, (DS_HEIGHT/2)-16, 16, 16); | ^ -widgets.c:479:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 479 | glVertex2f(2, y-(j+0.5)*kh-(0.2*kh)); - | ^ -widgets.c:480:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 480 | glVertex2f(2+kw*0.6, y-(j+0.5)*kh-(0.2*kh)); - | ^ -widgets.c:481:30: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 481 | glVertex2f(2+kw*0.6, y-(j+1.5)*kh+(0.2*kh)); - | ^ sequencer.c:1661:36: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1661 | seq_ui[B_TIME_DEC]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)-16, 16, 16); | ^ -widgets.c:482:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 482 | glVertex2f(2, y-(j+1.5)*kh+(0.2*kh)); - | ^ sequencer.c:1661:39: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1661 | seq_ui[B_TIME_DEC]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)-16, 16, 16); | ^ -widgets.c: In function 'draw_kbhoct': -widgets.c:507:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 507 | glVertex2f(x+j*kw, y); - | ^ -widgets.c:508:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 508 | glVertex2f(x+(j+1)*kw, y); - | ^ sequencer.c:1662:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1662 | seq_ui[B_DIV_INC]=hovertest_box(x, y, (DS_WIDTH/2)+102, (DS_HEIGHT/2)+4, 16, 16); | ^ -widgets.c:509:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 509 | glVertex2f(x+(j+1)*kw, y+kh); - | ^ -widgets.c:510:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 510 | glVertex2f(x+j*kw, y+kh); - | ^ -widgets.c:514:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 514 | glVertex2f(x+j*kw, y); - | ^ -widgets.c:515:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 515 | glVertex2f(x+(j+1)*kw, y); - | ^ -widgets.c:516:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 516 | glVertex2f(x+(j+1)*kw, y+kh); - | ^ -widgets.c:517:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 517 | glVertex2f(x+j*kw, y+kh); - | ^ -widgets.c:522:28: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 522 | render_text(tmps, x+j*kw+8, y+kh-4, 2, 0xff303030, 1); - | ^ -widgets.c:537:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 537 | glVertex2f(x+j*kw+(0.7*kw), y); - | ^ -widgets.c:538:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 538 | glVertex2f(x+(j+1)*kw+(0.3*kw), y); - | ^ -widgets.c:539:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 539 | glVertex2f(x+(j+1)*kw+(0.3*kw), y+(kh*0.5)); - | ^ -widgets.c:540:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 540 | glVertex2f(x+j*kw+(0.7*kw), y+(kh*0.5)); - | ^ -widgets.c:544:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 544 | glVertex2f(x+j*kw+(0.7*kw), y); - | ^ -widgets.c:545:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 545 | glVertex2f(x+(j+1)*kw+(0.3*kw), y); - | ^ -widgets.c:546:23: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 546 | glVertex2f(x+(j+1)*kw+(0.3*kw), y+(kh*0.5)); - | ^ -widgets.c:547:19: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 547 | glVertex2f(x+j*kw+(0.7*kw), y+(kh*0.5)); - | ^ -widgets.c:552:28: warning: conversion from 'int' to 'float' may change value [-Wconversion] - 552 | render_text(tmps, x+j*kw+(0.7*kw)+5, y+0.5*kh-5, 2, 0xffc0c0c0, 1); - | ^ -synthesizer.c:953:5: warning: '__builtin_strncpy' output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] - 953 | strncpy(mod[csynth][synth_label_edit].label, synth_label_text, 64); - | ^ sequencer.c:1662:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1662 | seq_ui[B_DIV_INC]=hovertest_box(x, y, (DS_WIDTH/2)+102, (DS_HEIGHT/2)+4, 16, 16); | ^ sequencer.c:1663:35: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1663 | seq_ui[B_DIV_DEC]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)+4, 16, 16); | ^ -widgets.c: In function 'hovertest_hslider': -widgets.c:709:21: warning: conversion from 'float' to 'int' may change value [-Wfloat-conversion] - 709 | if (hit) return (x-slx); - | ~~^~~~~ sequencer.c:1663:38: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1663 | seq_ui[B_DIV_DEC]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)+4, 16, 16); | ^ sequencer.c: In function 'sequencer_bpm_click': -widgets.c: In function 'textbox_edit': -widgets.c:738:20: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] - 738 | strlen(text) 1) beats_per_measure--; return; | ^~~~~~ +widgets.c: In function 'draw_kboct': +widgets.c:484:14: warning: iteration 4 invokes undefined behavior [-Waggressive-loop-optimizations] + 484 | ckey+=bkj[i]; + | ~~~^~~ sequencer.c:1711:50: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1711 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ +widgets.c:466:12: note: within this loop + 466 | for(i=0;i<5;i++) { // black keys + | ~^~ sequencer.c:1711:52: warning: conversion from 'int' to 'float' may change value [-Wconversion] 1711 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ @@ -6322,17 +6369,6 @@ | ^~~~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c: In function 'sequencer_bpm_close_dialog': sequencer.c:1745:6: warning: old-style function definition [-Wold-style-definition] -synthesizer.c: In function 'synthlabel_click': -synthesizer.c:934:5: warning: '__builtin_strncpy' output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] - 934 | strncpy(mod[csynth][synth_label_edit].label, synth_label_text, 64); - | ^ -widgets.c: In function 'draw_kboct': -widgets.c:484:14: warning: iteration 4 invokes undefined behavior [-Waggressive-loop-optimizations] - 484 | ckey+=bkj[i]; - | ~~~^~~ -widgets.c:466:12: note: within this loop - 466 | for(i=0;i<5;i++) { // black keys - | ~^~ widgets.c: In function 'draw_kbhoct': widgets.c:560:14: warning: iteration 4 invokes undefined behavior [-Waggressive-loop-optimizations] 560 | ckey+=bkj[i]; @@ -6353,6 +6389,26 @@ patch.c:606:9: note: object 'f' of size 4 606 | float f; | ^ +synthesizer.c:953:5: warning: '__builtin_strncpy' output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] + 953 | strncpy(mod[csynth][synth_label_edit].label, synth_label_text, 64); + | ^ +synthesizer.c: In function 'synthlabel_click': +synthesizer.c:934:5: warning: '__builtin_strncpy' output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] + 934 | strncpy(mod[csynth][synth_label_edit].label, synth_label_text, 64); + | ^ +patch.c: In function 'patch_modulator_keyboard': +patch.c:743:11: warning: array subscript 'long unsigned int[0]' is partly outside array bounds of 'float[1]' [-Warray-bounds] + 743 | *fptr&=fmask; + | ^~~~~ +patch.c:721:9: note: object 'f' of size 4 + 721 | float f; + | ^ +patch.c:743:11: warning: array subscript 'long unsigned int[0]' is partly outside array bounds of 'float[1]' [-Warray-bounds] + 743 | *fptr&=fmask; + | ^~~~~ +patch.c:721:9: note: object 'f' of size 4 + 721 | float f; + | ^ synthesizer.c: In function 'synth_init': synthesizer.c:100:11: warning: array subscript 64 is above array bounds of 'synthmodule[64]' [-Warray-bounds] 100 | mod[s][m].outputpos=0; @@ -6382,19 +6438,6 @@ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 32 | __va_arg_pack ()); | ~~~~~~~~~~~~~~~~~ -patch.c: In function 'patch_modulator_keyboard': -patch.c:743:11: warning: array subscript 'long unsigned int[0]' is partly outside array bounds of 'float[1]' [-Warray-bounds] - 743 | *fptr&=fmask; - | ^~~~~ -patch.c:721:9: note: object 'f' of size 4 - 721 | float f; - | ^ -patch.c:743:11: warning: array subscript 'long unsigned int[0]' is partly outside array bounds of 'float[1]' [-Warray-bounds] - 743 | *fptr&=fmask; - | ^~~~~ -patch.c:721:9: note: object 'f' of size 4 - 721 | float f; - | ^ patch.c: In function 'patch_draw_modulator': patch.c:556:26: warning: '%s' directive writing up to 127 bytes into a region of size 124 [-Wformat-overflow=] 556 | sprintf(tmps, "%02d %s %s", mi, modTypeNames[mod[csynth][mi].type], label); @@ -6445,11 +6488,11 @@ create-stamp debian/debhelper-build-stamp dh_prep dh_auto_install --destdir=debian/komposter/ - make -j16 install DESTDIR=/build/komposter-0\+git20201216\+ds/debian/komposter AM_UPDATE_INFO_DIR=no + make -j15 install DESTDIR=/build/komposter-0\+git20201216\+ds/debian/komposter AM_UPDATE_INFO_DIR=no make[1]: Entering directory '/build/komposter-0+git20201216+ds' make[2]: Entering directory '/build/komposter-0+git20201216+ds' + /usr/bin/mkdir -p '/build/komposter-0+git20201216+ds/debian/komposter/usr/bin' make[2]: Nothing to be done for 'install-data-am'. - /bin/mkdir -p '/build/komposter-0+git20201216+ds/debian/komposter/usr/bin' /usr/bin/install -c komposter '/build/komposter-0+git20201216+ds/debian/komposter/usr/bin' make[2]: Leaving directory '/build/komposter-0+git20201216+ds' make[1]: Leaving directory '/build/komposter-0+git20201216+ds' @@ -6471,8 +6514,8 @@ dh_gencontrol dh_md5sums dh_builddeb -dpkg-deb: building package 'komposter-dbgsym' in '../komposter-dbgsym_0+git20201216+ds-2_amd64.deb'. dpkg-deb: building package 'komposter' in '../komposter_0+git20201216+ds-2_amd64.deb'. +dpkg-deb: building package 'komposter-dbgsym' in '../komposter-dbgsym_0+git20201216+ds-2_amd64.deb'. dpkg-genbuildinfo --build=binary -O../komposter_0+git20201216+ds-2_amd64.buildinfo dpkg-genchanges --build=binary -O../komposter_0+git20201216+ds-2_amd64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -6480,12 +6523,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/1639232/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/1639232/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/1582683 and its subdirectories -I: Current time: Mon May 20 14:56:42 -12 2024 -I: pbuilder-time-stamp: 1716260202 +I: removing directory /srv/workspace/pbuilder/1639232 and its subdirectories +I: Current time: Wed Apr 19 10:36:22 +14 2023 +I: pbuilder-time-stamp: 1681850182