Input buildinfo: https://buildinfos.debian.net/buildinfo-pool/k/komposter/komposter_0+git20201216+ds-2_amd64.buildinfo Use metasnap for getting required timestamps New buildinfo file: /tmp/komposter-0+git20201216+ds-29f3mu2ou/komposter_0+git20201216+ds-2_amd64.buildinfo Get source package info: komposter=0+git20201216+ds-2 Source URL: http://snapshot.notset.fr/mr/package/komposter/0+git20201216+ds-2/srcfiles?fileinfo=1 env -i PATH=/usr/sbin:/usr/bin:/sbin:/bin TMPDIR=/tmp mmdebstrap --arch=amd64 --include=autoconf=2.71-2 automake=1:1.16.5-1.1 autopoint=0.21-4 autotools-dev=20180224.1+nmu1 base-files=12 base-passwd=3.5.52 bash=5.1-5+b1 binutils=2.37-10.1 binutils-common=2.37-10.1 binutils-x86-64-linux-gnu=2.37-10.1 bsdextrautils=2.37.2-5 bsdutils=1:2.37.2-5 build-essential=12.9 bzip2=1.0.8-5 coreutils=8.32-4.1 cpp=4:11.2.0-2 cpp-11=11.2.0-13 dash=0.5.11+git20210903+057cd650a4ed-3 debconf=1.5.79 debhelper=13.6 debianutils=5.5-1 dh-autoreconf=20 dh-strip-nondeterminism=1.13.0-1 diffutils=1:3.7-5 dpkg=1.21.1 dpkg-dev=1.21.1 dwz=0.14-1 file=1:5.41-2 findutils=4.8.0-1 fonts-agave=37-2 fonts-ferrite-core=2.0-1 fonts-inter=3.19+ds-2 freeglut3=2.8.1-6 freeglut3-dev=2.8.1-6 g++=4:11.2.0-2 g++-11=11.2.0-13 gcc=4:11.2.0-2 gcc-11=11.2.0-13 gcc-11-base=11.2.0-13 gettext=0.21-4 gettext-base=0.21-4 grep=3.7-1 groff-base=1.22.4-8 gzip=1.10-4 hostname=3.23 init-system-helpers=1.61 intltool-debian=0.35.0+20060710.5 libacl1=2.3.1-1 libarchive-zip-perl=1.68-1 libasan6=11.2.0-13 libasound2=1.2.5.1-1 libasound2-data=1.2.5.1-1 libatomic1=11.2.0-13 libattr1=1:2.5.1-1 libaudit-common=1:3.0.6-1 libaudit1=1:3.0.6-1+b1 libbinutils=2.37-10.1 libblkid1=2.37.2-5 libbrotli-dev=1.0.9-2+b3 libbrotli1=1.0.9-2+b3 libbsd0=0.11.3-1 libbz2-1.0=1.0.8-5 libc-bin=2.33-1 libc-dev-bin=2.33-1 libc6=2.33-1 libc6-dev=2.33-1 libcap-ng0=0.7.9-2.2+b1 libcap2=1:2.44-1 libcc1-0=11.2.0-13 libcom-err2=1.46.5-1 libcrypt-dev=1:4.4.27-1 libcrypt1=1:4.4.27-1 libctf-nobfd0=2.37-10.1 libctf0=2.37-10.1 libdb5.3=5.3.28+dfsg1-0.8 libdebconfclient0=0.261 libdebhelper-perl=13.6 libdpkg-perl=1.21.1 libdrm-amdgpu1=2.4.109-2 libdrm-common=2.4.109-2 libdrm-dev=2.4.109-2 libdrm-intel1=2.4.109-2 libdrm-nouveau2=2.4.109-2 libdrm-radeon1=2.4.109-2 libdrm2=2.4.109-2 libedit2=3.1-20210910-1 libegl-dev=1.3.4-2+b1 libegl-mesa0=21.3.3-1 libegl1=1.3.4-2+b1 libelf1=0.186-1 libexpat1=2.4.2-1 libffi8=3.4.2-3 libfile-stripnondeterminism-perl=1.13.0-1 libfreetype-dev=2.11.1+dfsg-1 libfreetype6=2.11.1+dfsg-1 libfreetype6-dev=2.11.1+dfsg-1 libgbm1=21.3.3-1 libgcc-11-dev=11.2.0-13 libgcc-s1=11.2.0-13 libgcrypt20=1.9.4-5 libgdbm-compat4=1.22-1 libgdbm6=1.22-1 libgl-dev=1.3.4-2+b1 libgl1=1.3.4-2+b1 libgl1-mesa-dev=21.3.3-1 libgl1-mesa-dri=21.3.3-1 libglapi-mesa=21.3.3-1 libgles-dev=1.3.4-2+b1 libgles1=1.3.4-2+b1 libgles2=1.3.4-2+b1 libglib2.0-0=2.70.2-1 libglu1-mesa=9.0.1-1 libglu1-mesa-dev=9.0.1-1 libglvnd-core-dev=1.3.4-2+b1 libglvnd-dev=1.3.4-2+b1 libglvnd0=1.3.4-2+b1 libglx-dev=1.3.4-2+b1 libglx-mesa0=21.3.3-1 libglx0=1.3.4-2+b1 libgmp10=2:6.2.1+dfsg-3 libgomp1=11.2.0-13 libgpg-error0=1.43-1 libgssapi-krb5-2=1.18.3-7 libice-dev=2:1.0.10-1 libice6=2:1.0.10-1 libicu67=67.1-7 libisl23=0.24-2 libitm1=11.2.0-13 libk5crypto3=1.18.3-7 libkeyutils1=1.6.1-2 libkrb5-3=1.18.3-7 libkrb5support0=1.18.3-7 libllvm12=1:12.0.1-17+b1 liblsan0=11.2.0-13 liblz4-1=1.9.3-2 liblzma5=5.2.5-2 libmagic-mgc=1:5.41-2 libmagic1=1:5.41-2 libmd0=1.0.4-1 libmount1=2.37.2-5 libmpc3=1.2.1-1 libmpfr6=4.1.0-3 libnsl-dev=1.3.0-2 libnsl2=1.3.0-2 libopenal-data=1:1.19.1-2 libopenal-dev=1:1.19.1-2 libopenal1=1:1.19.1-2 libopengl-dev=1.3.4-2+b1 libopengl0=1.3.4-2+b1 libpam-modules=1.4.0-11 libpam-modules-bin=1.4.0-11 libpam-runtime=1.4.0-11 libpam0g=1.4.0-11 libpciaccess-dev=0.16-1 libpciaccess0=0.16-1 libpcre2-8-0=10.39-3 libpcre3=2:8.39-13 libperl5.32=5.32.1-6 libpipeline1=1.5.5-1 libpng-dev=1.6.37-3 libpng16-16=1.6.37-3 libpthread-stubs0-dev=0.4-1 libquadmath0=11.2.0-13 libseccomp2=2.5.3-2 libselinux1=3.3-1+b1 libsensors-config=1:3.6.0-7 libsensors5=1:3.6.0-7 libsigsegv2=2.13-1 libsm-dev=2:1.2.3-1 libsm6=2:1.2.3-1 libsmartcols1=2.37.2-5 libsndio7.0=1.5.0-3 libssl1.1=1.1.1m-1 libstdc++-11-dev=11.2.0-13 libstdc++6=11.2.0-13 libsub-override-perl=0.09-2 libsystemd0=249.7-1 libtinfo6=6.3-1 libtirpc-common=1.3.2-2 libtirpc-dev=1.3.2-2 libtirpc3=1.3.2-2 libtool=2.4.6-15 libtsan0=11.2.0-13 libubsan1=11.2.0-13 libuchardet0=0.0.7-1 libudev1=249.7-1 libunistring2=0.9.10-6 libuuid1=2.37.2-5 libvulkan1=1.2.189.0-2 libwayland-client0=1.19.0-2+b1 libwayland-server0=1.19.0-2+b1 libx11-6=2:1.7.2-2+b1 libx11-data=2:1.7.2-2 libx11-dev=2:1.7.2-2+b1 libx11-xcb1=2:1.7.2-2+b1 libxau-dev=1:1.0.9-1 libxau6=1:1.0.9-1 libxcb-dri2-0=1.14-3 libxcb-dri3-0=1.14-3 libxcb-glx0=1.14-3 libxcb-present0=1.14-3 libxcb-shm0=1.14-3 libxcb-sync1=1.14-3 libxcb-xfixes0=1.14-3 libxcb1=1.14-3 libxcb1-dev=1.14-3 libxdmcp-dev=1:1.1.2-3 libxdmcp6=1:1.1.2-3 libxext-dev=2:1.3.4-1 libxext6=2:1.3.4-1 libxfixes3=1:5.0.3-2 libxi6=2:1.8-1 libxml2=2.9.12+dfsg-5+b1 libxshmfence1=1.3-1 libxt-dev=1:1.2.0-1 libxt6=1:1.2.0-1 libxxf86vm1=1:1.1.4-1+b2 libz3-4=4.8.12-1+b1 libzstd1=1.4.8+dfsg-3 linux-libc-dev=5.15.5-2 login=1:4.8.1-2 lsb-base=11.1.0 m4=1.4.18-5 make=4.3-4.1 man-db=2.9.4-4 mawk=1.3.4.20200120-2 mesa-common-dev=21.3.3-1 ncurses-base=6.3-1 ncurses-bin=6.3-1 patch=2.7.6-7 perl=5.32.1-6 perl-base=5.32.1-6 perl-modules-5.32=5.32.1-6 pkg-config=0.29.2-1 po-debconf=1.0.21+nmu1 rpcsvc-proto=1.4.2-4 sed=4.8-1 sensible-utils=0.0.17 sysvinit-utils=3.01-1 tar=1.34+dfsg-1 util-linux=2.37.2-5 x11-common=1:7.7+23 x11proto-dev=2021.5-1 xorg-sgml-doctools=1:1.11-1.1 xtrans-dev=1.4.0-1 xz-utils=5.2.5-2 zlib1g=1:1.2.11.dfsg-2 zlib1g-dev=1:1.2.11.dfsg-2 --variant=apt --aptopt=Acquire::Check-Valid-Until "false" --aptopt=Acquire::http::Dl-Limit "1000"; --aptopt=Acquire::https::Dl-Limit "1000"; --aptopt=Acquire::Retries "5"; --aptopt=APT::Get::allow-downgrades "true"; --keyring=/usr/share/keyrings/ --essential-hook=chroot "$1" sh -c "apt-get --yes install fakeroot util-linux" --essential-hook=copy-in /usr/share/keyrings/debian-archive-bullseye-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-security-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-stable.gpg /usr/share/keyrings/debian-archive-buster-automatic.gpg /usr/share/keyrings/debian-archive-buster-security-automatic.gpg /usr/share/keyrings/debian-archive-buster-stable.gpg /usr/share/keyrings/debian-archive-keyring.gpg /usr/share/keyrings/debian-archive-removed-keys.gpg /usr/share/keyrings/debian-archive-stretch-automatic.gpg /usr/share/keyrings/debian-archive-stretch-security-automatic.gpg /usr/share/keyrings/debian-archive-stretch-stable.gpg /usr/share/keyrings/debian-ports-archive-keyring-removed.gpg /usr/share/keyrings/debian-ports-archive-keyring.gpg /usr/share/keyrings/debian-keyring.gpg /etc/apt/trusted.gpg.d/ --essential-hook=chroot "$1" sh -c "rm /etc/apt/sources.list && echo 'deb http://snapshot.notset.fr/archive/debian/20220109T025204Z/ bookworm main deb-src http://snapshot.notset.fr/archive/debian/20220109T025204Z/ bookworm main deb http://snapshot.notset.fr/archive/debian/20220113T085612Z/ unstable main deb http://snapshot.notset.fr/archive/debian/20220104T025623Z/ unstable main' >> /etc/apt/sources.list && apt-get update" --customize-hook=chroot "$1" useradd --no-create-home -d /nonexistent -p "" builduser -s /bin/bash --customize-hook=chroot "$1" env sh -c "apt-get source --only-source -d komposter=0+git20201216+ds-2 && mkdir -p /build/komposter-N2eCT2 && dpkg-source --no-check -x /*.dsc /build/komposter-N2eCT2/komposter-0+git20201216+ds && chown -R builduser:builduser /build/komposter-N2eCT2" --customize-hook=chroot "$1" env --unset=TMPDIR runuser builduser -c "cd /build/komposter-N2eCT2/komposter-0+git20201216+ds && env DEB_BUILD_OPTIONS="parallel=4" LC_ALL="C.UTF-8" LC_COLLATE="C.UTF-8" SOURCE_DATE_EPOCH="1641300726" DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage -uc -a amd64 --build=any" --customize-hook=sync-out /build/komposter-N2eCT2 /tmp/komposter-0+git20201216+ds-29f3mu2ou bookworm /dev/null deb http://snapshot.notset.fr/archive/debian/20220104T025623Z unstable main I: automatically chosen mode: root I: chroot architecture amd64 is equal to the host's architecture I: automatically chosen format: null I: using /tmp/mmdebstrap.sG_OJ2YXiJ as tempdir I: running apt-get update... I: downloading packages with apt... I: extracting archives... I: installing essential packages... I: running --essential-hook in shell: sh -c 'chroot "$1" sh -c "apt-get --yes install fakeroot util-linux"' exec /tmp/mmdebstrap.sG_OJ2YXiJ Reading package lists... Building dependency tree... util-linux is already the newest version (2.37.2-5). The following NEW packages will be installed: fakeroot libfakeroot 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. Need to get 135 kB of archives. After this operation, 406 kB of additional disk space will be used. Get:1 http://snapshot.notset.fr/archive/debian/20220104T025623Z unstable/main amd64 libfakeroot amd64 1.26-1.1 [48.2 kB] Get:2 http://snapshot.notset.fr/archive/debian/20220104T025623Z unstable/main amd64 fakeroot amd64 1.26-1.1 [87.0 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 135 kB in 0s (633 kB/s) Selecting previously unselected package libfakeroot:amd64. (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 ... 4684 files and directories currently installed.) Preparing to unpack .../libfakeroot_1.26-1.1_amd64.deb ... Unpacking libfakeroot:amd64 (1.26-1.1) ... Selecting previously unselected package fakeroot. Preparing to unpack .../fakeroot_1.26-1.1_amd64.deb ... Unpacking fakeroot (1.26-1.1) ... Setting up libfakeroot:amd64 (1.26-1.1) ... Setting up fakeroot (1.26-1.1) ... update-alternatives: using /usr/bin/fakeroot-sysv to provide /usr/bin/fakeroot (fakeroot) in auto mode Processing triggers for libc-bin (2.33-1) ... I: running special hook: copy-in /usr/share/keyrings/debian-archive-bullseye-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-security-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-stable.gpg /usr/share/keyrings/debian-archive-buster-automatic.gpg /usr/share/keyrings/debian-archive-buster-security-automatic.gpg /usr/share/keyrings/debian-archive-buster-stable.gpg /usr/share/keyrings/debian-archive-keyring.gpg /usr/share/keyrings/debian-archive-removed-keys.gpg /usr/share/keyrings/debian-archive-stretch-automatic.gpg /usr/share/keyrings/debian-archive-stretch-security-automatic.gpg /usr/share/keyrings/debian-archive-stretch-stable.gpg /usr/share/keyrings/debian-ports-archive-keyring-removed.gpg /usr/share/keyrings/debian-ports-archive-keyring.gpg /usr/share/keyrings/debian-keyring.gpg /etc/apt/trusted.gpg.d/ I: running --essential-hook in shell: sh -c 'chroot "$1" sh -c "rm /etc/apt/sources.list && echo 'deb http://snapshot.notset.fr/archive/debian/20220109T025204Z/ bookworm main deb-src http://snapshot.notset.fr/archive/debian/20220109T025204Z/ bookworm main deb http://snapshot.notset.fr/archive/debian/20220113T085612Z/ unstable main deb http://snapshot.notset.fr/archive/debian/20220104T025623Z/ unstable main' >> /etc/apt/sources.list && apt-get update"' exec /tmp/mmdebstrap.sG_OJ2YXiJ Get:1 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm InRelease [129 kB] Get:2 http://snapshot.notset.fr/archive/debian/20220113T085612Z unstable InRelease [165 kB] Hit:3 http://snapshot.notset.fr/archive/debian/20220104T025623Z unstable InRelease Ign:4 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm/main Sources Ign:5 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm/main amd64 Packages Ign:4 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm/main Sources Ign:5 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm/main amd64 Packages Ign:4 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm/main Sources Ign:5 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm/main amd64 Packages Get:4 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm/main Sources [11.7 MB] Get:5 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm/main amd64 Packages [11.1 MB] Ign:6 http://snapshot.notset.fr/archive/debian/20220113T085612Z unstable/main amd64 Packages Err:6 http://snapshot.notset.fr/archive/debian/20220113T085612Z unstable/main amd64 Packages 404 Not Found [IP: 10.13.0.253 80] Ign:6 http://snapshot.notset.fr/archive/debian/20220113T085612Z unstable/main amd64 Packages Get:6 http://snapshot.notset.fr/archive/debian/20220113T085612Z unstable/main amd64 Packages [12.0 MB] Fetched 35.2 MB in 29s (1201 kB/s) Reading package lists... I: installing remaining packages inside the chroot... I: running --customize-hook in shell: sh -c 'chroot "$1" useradd --no-create-home -d /nonexistent -p "" builduser -s /bin/bash' exec /tmp/mmdebstrap.sG_OJ2YXiJ I: running --customize-hook in shell: sh -c 'chroot "$1" env sh -c "apt-get source --only-source -d komposter=0+git20201216+ds-2 && mkdir -p /build/komposter-N2eCT2 && dpkg-source --no-check -x /*.dsc /build/komposter-N2eCT2/komposter-0+git20201216+ds && chown -R builduser:builduser /build/komposter-N2eCT2"' exec /tmp/mmdebstrap.sG_OJ2YXiJ Reading package lists... NOTICE: 'komposter' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/multimedia-team/komposter.git Please use: git clone https://salsa.debian.org/multimedia-team/komposter.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 770 kB of source archives. Get:1 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm/main komposter 0+git20201216+ds-2 (dsc) [2119 B] Get:2 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm/main komposter 0+git20201216+ds-2 (tar) [762 kB] Get:3 http://snapshot.notset.fr/archive/debian/20220109T025204Z bookworm/main komposter 0+git20201216+ds-2 (diff) [5600 B] Fetched 770 kB in 1s (907 kB/s) Download complete and in download only mode W: Download is performed unsandboxed as root as file 'komposter_0+git20201216+ds-2.dsc' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) dpkg-source: info: extracting komposter in /build/komposter-N2eCT2/komposter-0+git20201216+ds dpkg-source: info: unpacking komposter_0+git20201216+ds.orig.tar.xz dpkg-source: info: unpacking komposter_0+git20201216+ds-2.debian.tar.xz I: running --customize-hook in shell: sh -c 'chroot "$1" env --unset=TMPDIR runuser builduser -c "cd /build/komposter-N2eCT2/komposter-0+git20201216+ds && env DEB_BUILD_OPTIONS="parallel=4" LC_ALL="C.UTF-8" LC_COLLATE="C.UTF-8" SOURCE_DATE_EPOCH="1641300726" DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage -uc -a amd64 --build=any"' exec /tmp/mmdebstrap.sG_OJ2YXiJ dpkg-buildpackage: info: source package komposter dpkg-buildpackage: info: source version 0+git20201216+ds-2 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Gürkan Myczko dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 debian/rules clean dh clean --without autoreconf debian/rules override_dh_clean make[1]: Entering directory '/build/komposter-N2eCT2/komposter-0+git20201216+ds' dh_clean make[1]: Leaving directory '/build/komposter-N2eCT2/komposter-0+git20201216+ds' debian/rules binary-arch dh binary-arch --without autoreconf dh_update_autotools_config -a dh_auto_configure -a ./configure --build=x86_64-linux-gnu --prefix=/usr --includedir=\${prefix}/include --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info --sysconfdir=/etc --localstatedir=/var --disable-option-checking --disable-silent-rules --libdir=\${prefix}/lib/x86_64-linux-gnu --runstatedir=/run --disable-maintainer-mode --disable-dependency-tracking checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes /build/komposter-N2eCT2/komposter-0+git20201216+ds/missing: Unknown `--is-lightweight' option Try `/build/komposter-N2eCT2/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 gawk... no checking for mawk... mawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether make supports the include directive... yes (GNU style) checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking whether gcc understands -c and -o together... yes checking dependency style of gcc... none checking for gcc option to accept ISO C99... none needed 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 ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking whether byte ordering is bigendian... no checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... none checking for compilation mode... optimized checking if gcc accepts -O3... yes checking if g++ accepts -O3... yes checking if gcc accepts -fcx-limited-range... yes checking if g++ accepts -fcx-limited-range... yes checking if gcc accepts -ffinite-math-only... yes checking if g++ accepts -ffinite-math-only... yes checking if gcc accepts -fno-math-errno... yes checking if g++ accepts -fno-math-errno... yes checking if gcc accepts -fno-rounding-math... yes checking if g++ accepts -fno-rounding-math... yes checking if gcc accepts -fno-signaling-nans... yes checking if g++ accepts -fno-signaling-nans... yes checking if gcc accepts -fno-trapping-math... yes checking if g++ accepts -fno-trapping-math... yes checking if gcc accepts -fgcse-las... yes checking if g++ accepts -fgcse-las... yes checking if gcc accepts -fgcse-sm... yes checking if g++ accepts -fgcse-sm... yes checking if gcc accepts -fsee... yes checking if g++ accepts -fsee... yes checking if gcc accepts -fsingle-precision-constant... yes checking if g++ accepts -fsingle-precision-constant... yes checking if gcc accepts -fomit-frame-pointer... yes checking if g++ accepts -fomit-frame-pointer... yes checking if linker accepts -s... yes checking if gcc accepts -Wall... yes checking if g++ accepts -Wall... yes checking if gcc accepts -Wcast-align... yes checking if g++ accepts -Wcast-align... yes checking if gcc accepts -Wconversion... yes checking if g++ accepts -Wconversion... yes checking if gcc accepts -Wdisabled-optimization... yes checking if g++ accepts -Wdisabled-optimization... yes checking if gcc accepts -Wextra... yes checking if g++ accepts -Wextra... yes checking if gcc accepts -Winit-self... yes checking if g++ accepts -Winit-self... yes checking if gcc accepts -Winvalid-pch... yes checking if g++ accepts -Winvalid-pch... yes checking if gcc accepts -Wmissing-format-attribute... yes checking if g++ accepts -Wmissing-format-attribute... yes checking if gcc accepts -Wmissing-include-dirs... yes checking if g++ accepts -Wmissing-include-dirs... yes checking if gcc accepts -Wmissing-noreturn... yes checking if g++ accepts -Wmissing-noreturn... yes checking if gcc accepts -Wno-multichar... yes checking if g++ accepts -Wno-multichar... yes checking if gcc accepts -Wpacked... yes checking if g++ accepts -Wpacked... yes checking if gcc accepts -Wredundant-decls... yes checking if g++ accepts -Wredundant-decls... yes checking if gcc accepts -Wshadow... yes checking if g++ accepts -Wshadow... yes checking if gcc accepts -Wswitch-default... yes checking if g++ accepts -Wswitch-default... yes checking if gcc accepts -Wundef... yes checking if g++ accepts -Wundef... yes checking if gcc accepts -Wwrite-strings... yes checking if g++ accepts -Wwrite-strings... yes checking if gcc accepts -Wbad-function-cast... yes checking if gcc accepts -Wmissing-declarations... yes checking if gcc accepts -Wmissing-prototypes... yes checking if gcc accepts -Wnested-externs... yes checking if gcc accepts -Wold-style-definition... yes checking if gcc accepts -Wstrict-prototypes... yes checking if g++ accepts -Wctor-dtor-privacy... yes checking if g++ accepts -Werror=non-virtual-dtor... yes checking if g++ accepts -Woverloaded-virtual... yes checking if gcc accepts -ftracer... yes checking if g++ accepts -ftracer... yes checking if gcc accepts -fweb... yes checking if g++ accepts -fweb... yes checking if gcc accepts -pipe... yes checking if g++ accepts -pipe... yes checking if gcc accepts -Werror-implicit-function-declaration... yes checking for cpu architecture... autodetect checking if gcc accepts -march=native... yes checking if g++ accepts -march=native... yes checking for include directory /opt/include... no checking for library directory /opt/lib... no checking for include directory /opt/local/include... no checking for library directory /opt/local/lib... no checking for include directory /sw/include... no checking for library directory /sw/lib... no checking for include directory /usr/local/include... yes checking for library directory /usr/local/lib... yes checking for include directory /usr/X11R6/include... no checking for library directory /usr/X11R6/lib... no checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for freetype2... yes checking if freetype2 is ok... yes checking for glutInit in -lglut... yes checking if GLUT is ok... yes checking for openal... yes checking if openal is ok... yes checking for glFrustum in -lGL... yes checking for gluPerspective in -lGLU... yes checking if OpenGL is ok... yes checking for log in -lm... yes checking for pthread_create in -lpthread... yes checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: executing depfiles commands Configuration for komposter 2.0.0: Enable debug: no Enable optimizations: yes Compiler: gcc Compiler flags: -g -O2 -ffile-prefix-map=/build/komposter-N2eCT2/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 -march=native -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/AL Linker flags: -frelease -L/usr/local/lib Libs: -lpthread -lm -lGLU -lGL -lglut -lfreetype -lopenal Install prefix: /usr Install resources to: /usr Type 'make' to build and 'make install' to install komposter. debian/rules override_dh_auto_build make[1]: Entering directory '/build/komposter-N2eCT2/komposter-0+git20201216+ds' sed -i s,-march=native,,g Makefile dh_auto_build make -j10 make[2]: Entering directory '/build/komposter-N2eCT2/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-N2eCT2/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-N2eCT2/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 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-N2eCT2/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 bezier.o bezier.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-N2eCT2/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 buffermm.o buffermm.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-N2eCT2/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 console.o console.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-N2eCT2/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 dialog.o dialog.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-N2eCT2/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 dotfile.o dotfile.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-N2eCT2/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 filedialog.o filedialog.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-N2eCT2/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 fileops.o fileops.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-N2eCT2/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 font.o font.c In file included from buffermm.h:16, from buffermm.c:13: modules.h:152:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 152 | void calc_supersaw_tables(); | ^~~~ In file included from dotfile.c:16: 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(); | ^~~ dotfile.c:32:5: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 32 | int dotfile_load() { | ^~~~~~~~~~~~ dotfile.c: In function ‘dotfile_load’: dotfile.c:32:5: warning: old-style function definition [-Wold-style-definition] dotfile.c:70:22: warning: passing argument 1 of ‘dotfile_setvalue’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 70 | dotfile_setvalue("synthFileDir", home); | ^~~~~~~~~~~~~~ In file included from dotfile.c:16: dotfile.h:19:28: note: expected ‘char *’ but argument is of type ‘const char *’ 19 | int dotfile_setvalue(char *key, char *value); | ~~~~~~^~~ dotfile.c:71:22: warning: passing argument 1 of ‘dotfile_setvalue’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 71 | dotfile_setvalue("songFileDir", home); | ^~~~~~~~~~~~~ In file included from dotfile.c:16: dotfile.h:19:28: note: expected ‘char *’ but argument is of type ‘const char *’ 19 | int dotfile_setvalue(char *key, char *value); | ~~~~~~^~~ dotfile.c: At top level: dotfile.c:78:5: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 78 | int dotfile_save() { | ^~~~~~~~~~~~ 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-N2eCT2/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 main.o main.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-N2eCT2/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 modules.o modules.c In file included from pattern.h:18, from buffermm.h:17, from buffermm.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 audio.c:16: 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 audio.c:17: modules.h:152:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 152 | void calc_supersaw_tables(); | ^~~~ 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 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; | ^ 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); | ^~ In file included from dialog.h:16, from filedialog.c:13: 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); | ^~ In file included from dialog.h:16, from filedialog.c:13: 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); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ 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]); | ^~~~ In file included from dialog.h:16, from filedialog.c:13: 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) | ~~~~^ 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); | ~^~ console.c:44:38: 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); | ~^~ console.c:45:32: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 45 | render_text(backlog[logptr], x, y, 2, ((unsigned char)(a)<<24)|0x00b05500, 0); | ^ console.c:45:35: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 45 | render_text(backlog[logptr], x, y, 2, ((unsigned char)(a)<<24)|0x00b05500, 0); | ^ console.c:45:65: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 45 | render_text(backlog[logptr], x, y, 2, ((unsigned char)(a)<<24)|0x00b05500, 0); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ 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; | ^ 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; | ^ 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]]; | ^~ In file included from widgets.h:23, from dialog.h:16, from about.h:17, from about.c:13: modules.h:152:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 152 | void calc_supersaw_tables(); | ^~~~ about.c: In function ‘about_draw’: about.c:17:55: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 17 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 120, 260, "", 0); | ^~ In file included from dialog.h:16, from about.h:17, from about.c:13: 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); | ~~~~~~^~~~~ about.c:19:15: warning: macro "__DATE__" might prevent reproducible builds [-Wdate-time] 19 | render_text(K_VERSION, (DS_WIDTH/2)+120, (DS_HEIGHT/2)-32, 2, 0xffb05500, 2); | ^~~~~~~~~ about.c: In function ‘about_hover’: about.c:31:22: warning: unused parameter ‘x’ [-Wunused-parameter] 31 | void about_hover(int x, int y) | ~~~~^ about.c:31:29: warning: unused parameter ‘y’ [-Wunused-parameter] 31 | void about_hover(int x, int y) | ~~~~^ about.c: In function ‘about_click’: about.c:36:22: warning: unused parameter ‘button’ [-Wunused-parameter] 36 | void about_click(int button, int state, int x, int y) | ~~~~^~~~~~ about.c:36:45: warning: unused parameter ‘x’ [-Wunused-parameter] 36 | void about_click(int button, int state, int x, int y) | ~~~~^ about.c:36:52: warning: unused parameter ‘y’ [-Wunused-parameter] 36 | void about_click(int button, int state, int x, int y) | ~~~~^ about.c: In function ‘about_keyboard’: about.c:42:44: warning: unused parameter ‘x’ [-Wunused-parameter] 42 | void about_keyboard(unsigned char key, int x, int y) | ~~~~^ 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: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); | ^~~ In file included from synthesizer.h:29, from patch.h:21, from fileops.c:20: 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(); | ^~~ In file included from synthesizer.h:29, from buffermm.h:18, from audio.c:17: 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(); | ^~~ In file included from patch.h:21, from fileops.c:20: 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); | ^~~~~~~~~~~~~~ In file included from patch.h:21, from fileops.c:20: synthesizer.h:85:5: warning: redundant redeclaration of ‘synth_trace’ [-Wredundant-decls] 85 | int synth_trace(int syn, int pm, int fifo); | ^~~~~~~~~~~ In file included from fileops.c:18: 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;i=0) { if (signalfifo[syn][m]>mm) mm=signalfifo[syn][m]; m++; } | ^ 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++; } | ^~~~~~~~~~ audio.c:300:65: warning: conversion to ‘size_t’ {aka ‘long unsigned int’} from ‘long int’ may change the sign of the result [-Wsign-conversion] 300 | memcpy(buffer, &render_buffer[render_playpos*2], copylen*4); | ~~~~~~~^~ 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); | ^ audio.c:304:74: warning: conversion to ‘size_t’ {aka ‘long unsigned int’} from ‘long int’ may change the sign of the result [-Wsign-conversion] 304 | memcpy(&buffer[copylen], &render_buffer[0], (bufferlen-copylen)*4); | ~~~~~~~~~~~~~~~~~~~^~ audio.c:309:65: warning: conversion to ‘size_t’ {aka ‘long unsigned int’} from ‘long int’ may change the sign of the result [-Wsign-conversion] 309 | memcpy(buffer, &render_buffer[render_playpos*2], copylen*4); | ~~~~~~~^~ audio.c:321:65: warning: conversion to ‘size_t’ {aka ‘long unsigned int’} from ‘long int’ may change the sign of the result [-Wsign-conversion] 321 | memcpy(buffer, &render_buffer[render_playpos*2], copylen*4); | ~~~~~~~^~ 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); | ^~~~~~ audio.c:325:58: warning: conversion to ‘size_t’ {aka ‘long unsigned int’} from ‘long int’ may change the sign of the result [-Wsign-conversion] 325 | memset(&buffer[copylen], 0, (bufferlen-copylen)*4); | ~~~~~~~~~~~~~~~~~~~^~ 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); | ^~~~~~ audio.c:334:65: warning: conversion to ‘size_t’ {aka ‘long unsigned int’} from ‘long int’ may change the sign of the result [-Wsign-conversion] 334 | memcpy(buffer, &render_buffer[render_playpos*2], copylen*4); | ~~~~~~~^~ 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); | ^~~~~~ audio.c:346:12: warning: conversion from ‘long int’ to ‘int’ may change value [-Wconversion] 346 | return bufferlen; | ^~~~~~~~~ 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); | ^~~~~~ audio.c:360:21: warning: conversion to ‘long unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 360 | ticks=playpos / (OUTPUTFREQ/(bpm*256/60)); // calc tick from sample index | ^ 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); | ^~~~~~ audio.c:360:13: warning: conversion to ‘long int’ from ‘long unsigned int’ may change the sign of the result [-Wsign-conversion] 360 | ticks=playpos / (OUTPUTFREQ/(bpm*256/60)); // calc tick from sample index | ^~~~~~~ audio.c:361:15: warning: conversion from ‘long int’ to ‘int’ may change value [-Wconversion] 361 | pattpos=ticks>>6; | ^~~~~ 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; | ^~ 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); | ^~~~~~ audio.c:378:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare] 378 | if ( m<(pattlen[cpatt]*16) ) { // don't drop gate if next note is legato | ^ 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); | ^~~~~~ audio.c:394:17: warning: declaration of ‘i’ shadows a previous local [-Wshadow] 394 | for(int i=0;i<4;i++) { | ^ audio.c:243:7: note: shadowed declaration is here 243 | int i, m, mi=0, mt, ii, pkey; | ^ 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); | ^~~~~~ 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); | ^~~~~ audio.c:402:46: warning: conversion to ‘long unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 402 | buf=kmm_alloc(modDataBufferLength[mt], voice, csynth, mi, mt); | ~~~~~~~~~~~~~~~~~~~^~~~ 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 audio_peak) audio_peak=fabs(p); | ^~~~ fileops.c:442:73: warning: conversion to ‘size_t’ {aka ‘long unsigned int’} from ‘int’ may change the sign of the result [-Wsign-conversion] 442 | for(i=0;i audio_latest_peak) audio_latest_peak=fabs(p); | ^~~~ fileops.c:443:73: warning: conversion to ‘size_t’ {aka ‘long unsigned int’} from ‘int’ may change the sign of the result [-Wsign-conversion] 443 | for(i=0;i>10)) { // is there a pattern here? | ~~~~~^~~~ audio.c:486:54: warning: conversion from ‘long int’ to ‘int’ may change value [-Wconversion] 486 | pattstart=sequencer_patternstart(voice, ticks>>10); | ~~~~~^~~~ 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); | ^~~~~ audio.c:488:17: warning: conversion from ‘long int’ to ‘int’ may change value [-Wconversion] 488 | pattpos=(ticks/64) - (pattstart*16); | ^ fileops.c: In function ‘probe_chunk’: audio.c:489:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare] 489 | while (pattpos>=(pattlen[pattern]*16)) pattpos-=(pattlen[pattern]*16); | ^~ 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); | ^~~~~ audio.c:489:55: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 489 | while (pattpos>=(pattlen[pattern]*16)) pattpos-=(pattlen[pattern]*16); | ^~ 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); | ^~~~~ audio.c:489:57: warning: conversion to ‘int’ from ‘unsigned int’ may change the sign of the result [-Wsign-conversion] 489 | while (pattpos>=(pattlen[pattern]*16)) pattpos-=(pattlen[pattern]*16); | ^ audio.c:514:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare] 514 | if ( m<(pattlen[pattern]*16) ) { // don't drop gate if next note is legato | ^ fileops.c: In function ‘synth_colorize’: audio.c:526:17: warning: declaration of ‘i’ shadows a previous local [-Wshadow] 526 | for(int i=0;i<4;i++) { | ^ fileops.c:568:58: warning: conversion from ‘int’ to ‘unsigned char’ may change value [-Wconversion] 568 | for(m=0;m audio_peak) audio_peak=fabs(p); | ^~~~ fileops.c: In function ‘synth_update_bpm’: audio.c:556:56: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 556 | if (fabs(p) > audio_latest_peak) audio_latest_peak=fabs(p); | ^~~~ fileops.c:610:41: warning: conversion to ‘int’ from ‘unsigned int’ may change the sign of the result [-Wsign-conversion] 610 | val=knob_scale2float(mod[s][m].scale, modvalue[s][p][m]); // un-scale raw float | ~~~~~~~~~^~~~~~ fileops.c:612:50: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 612 | modvalue[s][p][m]=(val*60*OUTPUTFREQ)/newbpm; // re-scale frequency to raw with new bpm | ^ audio.c:562:13: warning: conversion from ‘long int’ to ‘int’ may change value [-Wconversion] 562 | oldtick=ticks; | ^~~~~ fileops.c:614:51: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 614 | modvalue[s][p][m]=(OUTPUTFREQ*60)/(val*newbpm); // ditto with tempo | ^ In file included from /usr/include/string.h:519, 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, from dialog.h:16, from filedialog.c:13: In function ‘strncat’, inlined from ‘filedialog_open’ at filedialog.c:24:3: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:135:10: warning: ‘__builtin___strncat_chk’ specified bound 255 equals destination size [-Wstringop-truncation] 135 | return __builtin___strncat_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ audio.c: In function ‘audio_resetsynth’: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:135:10: warning: ‘__builtin___strncat_chk’ specified bound 255 equals destination size [-Wstringop-overflow=] audio.c:652:65: warning: conversion to ‘long unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 652 | if (lbuf) memset(lbuf, 0, modDataBufferLength[MOD_DELAY]*sizeof(float)); | ^ 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; | ^ audio.c:637:5: warning: switch missing default case [-Wswitch-default] 637 | switch(mt) { | ^~~~~~ audio.c: At top level: audio.c:698:5: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 698 | int audio_exportwav() //char *filename) | ^~~~~~~~~~~~~~~ audio.c: In function ‘audio_exportwav’: audio.c:698:5: warning: old-style function definition [-Wold-style-definition] 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; | ^~ 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; | ^~~~~~~~~~~~~~~~ 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); | ~~~~~~~~~~~~~~~~^~ In file included from synthesizer.h:29, from buffermm.h:18, from buffermm.c:13: 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(); | ^~~ 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-N2eCT2/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-N2eCT2/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 In file included from buffermm.h:18, from buffermm.c:13: 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, from buffermm.h:18, from buffermm.c:13: fileops.h:62:6: note: previous declaration of ‘synth_stackify’ with type ‘void(int)’ 62 | void synth_stackify(int syn); | ^~~~~~~~~~~~~~ In file included from buffermm.h:18, from buffermm.c:13: synthesizer.h:85:5: warning: redundant redeclaration of ‘synth_trace’ [-Wredundant-decls] 85 | int synth_trace(int syn, int pm, int fifo); | ^~~~~~~~~~~ In file included from synthesizer.h:31, from buffermm.h:18, from buffermm.c:13: 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 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-N2eCT2/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 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(); | ^~~~ 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 /usr/include/string.h:519, 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 font.c:13: In function ‘strncpy’, inlined from ‘font_init’ at font.c:83:5: 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(); | ^~~ /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ output may be truncated copying 511 bytes from a string of length 511 [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘strncat’, inlined from ‘font_init’ at font.c:84:5: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:135:10: warning: ‘__builtin___strncat_chk’ output may be truncated copying 511 bytes from a string of length 2039 [-Wstringop-truncation] 135 | return __builtin___strncat_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from buffermm.h:18, from main.c:30: 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, from buffermm.h:18, from main.c:30: fileops.h:62:6: note: previous declaration of ‘synth_stackify’ with type ‘void(int)’ 62 | void synth_stackify(int syn); | ^~~~~~~~~~~~~~ In file included from buffermm.h:18, from main.c:30: synthesizer.h:85:5: warning: redundant redeclaration of ‘synth_trace’ [-Wredundant-decls] 85 | int synth_trace(int syn, int pm, int fifo); | ^~~~~~~~~~~ In file included from synthesizer.h:31, from buffermm.h:18, from main.c:30: 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 main.c:40: 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(); | ^~~~ 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, from main.c:30: 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; } | ^~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from main.c:30: 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; } | ^~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from main.c:30: 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; } | ^~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from main.c:30: 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; } | ^~~~~~~~~~~ In file included from about.h:17, from main.c: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); | ~~~~~~^~~~ 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; } | ^~~~~~~~~~~~ In file included from about.h:17, from main.c:28: 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; } | ^~~~~~~~~~~~ In file included from about.h:17, from main.c:28: 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; } | ^~~~~~~~~~~~~~~ In file included from about.h:17, from main.c:28: 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; } | ^~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from main.c:30: 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) | ^~~~~~ 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;} | ^~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from main.c:30: 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; } | ^~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from main.c:30: 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; } | ^~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from main.c:30: 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; } | ^~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from main.c:30: 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]); | ^~~ In file included from dialog.h:16, from about.h:17, from main.c:28: 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]); | ^~~ In file included from dialog.h:16, from about.h:17, from main.c:28: 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]); | ^~~ In file included from dialog.h:16, from about.h:17, from main.c:28: 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]); | ^~~ In file included from dialog.h:16, from about.h:17, from main.c:28: 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]); | ^~~~~~~~~~~ In file included from dialog.h:16, from about.h:17, from main.c:28: 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]); | ^~~~~ In file included from dialog.h:16, from about.h:17, from main.c:28: 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); | ^~~~ 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]); | ^~ In file included from dialog.h:16, from about.h:17, from main.c:28: 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 function ‘strncpy’, inlined from ‘filedialog_draw’ at filedialog.c:126:7: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ specified bound 255 equals destination size [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ specified bound 255 equals destination size [-Wstringop-truncation] In function ‘strncpy’, inlined from ‘filedialog_draw’ at filedialog.c:114:7: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin___strncpy_chk’ specified bound depends on the length of the source argument [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ 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); | ^~~~~~~~~~ filedialog.c: In function ‘filedialog_draw’: filedialog.c:114:41: note: length computed here 114 | strncpy(ttmps, fd->g.gl_pathv[i], strlen(fd->g.gl_pathv[i])-1); | ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/string.h:519, 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, from dialog.h:16, from filedialog.c:13: In function ‘strncpy’, inlined from ‘filedialog_draw’ at filedialog.c:116:7: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ specified bound 255 equals destination size [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ 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); | ^~~~~~~~~~~ In file included from about.h:17, from main.c: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); | ~~~~~~^~~~ 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); | ^~~~~~~~~~~~ In file included from about.h:17, from main.c:28: 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); | ^~~~~~~~~~~~ In file included from about.h:17, from main.c:28: 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); | ^~~~~~~~~~~~~~~ In file included from about.h:17, from main.c:28: 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: 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) | ^~~~~~~~~~~~~~ In file included from /usr/include/string.h:519, 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 console.h:17, from pattern.h:19, from buffermm.h:17, from audio.c:17: In function ‘strncpy’, inlined from ‘audio_exportwav’ at audio.c:708:3: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ output truncated before terminating nul copying 4 bytes from a string of the same length [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘strncpy’, inlined from ‘audio_exportwav’ at audio.c:710:3: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ output truncated before terminating nul copying 4 bytes from a string of the same length [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘strncpy’, inlined from ‘audio_exportwav’ at audio.c:711:3: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ output truncated before terminating nul copying 4 bytes from a string of the same length [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘strncpy’, inlined from ‘audio_exportwav’ at audio.c:719:3: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ output truncated before terminating nul copying 4 bytes from a string of the same length [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ main.c: In function ‘cleanup’: main.c:322:6: warning: function might be candidate for attribute ‘noreturn’ [-Wsuggest-attribute=noreturn] 322 | void cleanup(void) | ^~~~~~~ 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: 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, from modules.c:19: 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(); | ^~~ In file included from buffermm.h:18, from modules.c:19: 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, from buffermm.h:18, from modules.c:19: fileops.h:62:6: note: previous declaration of ‘synth_stackify’ with type ‘void(int)’ 62 | void synth_stackify(int syn); | ^~~~~~~~~~~~~~ In file included from buffermm.h:18, from modules.c:19: synthesizer.h:85:5: warning: redundant redeclaration of ‘synth_trace’ [-Wredundant-decls] 85 | int synth_trace(int syn, int pm, int fifo); | ^~~~~~~~~~~ In file included from synthesizer.h:31, from buffermm.h:18, from modules.c:19: 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 function ‘strncpy’, inlined from ‘filedialog_click’ at filedialog.c:203:9: In file included from modules.c:22: sequencer.h:33:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 33 | void sequencer_init(); | ^~~~ /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin___strncpy_chk’ specified bound depends on the length of the source argument [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ filedialog.c: In function ‘filedialog_click’: sequencer.h:80:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 80 | void sequencer_bpm_close_dialog(); | ^~~~ 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-N2eCT2/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 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); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/string.h:519, 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, from dialog.h:16, from filedialog.c:13: In function ‘strncpy’, inlined from ‘filedialog_click’ at filedialog.c:205:9: 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; | ^~~~~~~~~~ /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ specified bound 255 equals destination size [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘strncpy’, inlined from ‘filedialog_click’ at filedialog.c:226:9: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ specified bound 255 equals destination size [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __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:135:10: warning: ‘__builtin___strncat_chk’ specified bound 512 equals destination size [-Wstringop-truncation] 135 | return __builtin___strncat_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ 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"}; | ^~~~~ 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"}; | ^~~~~~ modules.c:312:40: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 312 | char* modLfoWaveforms[LFO_WAVEFORMS]={"Square", "Saw", "Triangle", "Sine"}; | ^~~~~~~~ modules.c:312:50: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 312 | char* modLfoWaveforms[LFO_WAVEFORMS]={"Square", "Saw", "Triangle", "Sine"}; | ^~~~~ modules.c:312:57: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 312 | char* modLfoWaveforms[LFO_WAVEFORMS]={"Square", "Saw", "Triangle", "Sine"}; | ^~~~~~~~~~ modules.c:312:69: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 312 | char* modLfoWaveforms[LFO_WAVEFORMS]={"Square", "Saw", "Triangle", "Sine"}; | ^~~~~~ In function ‘strncat’, inlined from ‘filedialog_click’ at filedialog.c:177:5: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:135:10: warning: ‘__builtin___strncat_chk’ specified bound 512 equals destination size [-Wstringop-overflow=] 135 | return __builtin___strncat_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ modules.c:313:32: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 313 | char* modVcfModes[VCF_MODES]={"Off", "Lowpass", "Highpass", "Bandpass"}; | ^~~~~ In function ‘strncat’, inlined from ‘filedialog_click’ at filedialog.c:180:7: modules.c:313:39: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 313 | char* modVcfModes[VCF_MODES]={"Off", "Lowpass", "Highpass", "Bandpass"}; | ^~~~~~~~~ /usr/include/x86_64-linux-gnu/bits/string_fortified.h:135:10: warning: ‘__builtin___strncat_chk’ specified bound 512 equals destination size [-Wstringop-overflow=] 135 | return __builtin___strncat_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ modules.c:313:50: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 313 | char* modVcfModes[VCF_MODES]={"Off", "Lowpass", "Highpass", "Bandpass"}; | ^~~~~~~~~~ modules.c:313:62: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 313 | char* modVcfModes[VCF_MODES]={"Off", "Lowpass", "Highpass", "Bandpass"}; | ^~~~~~~~~~ modules.c:314:36: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 314 | char* modDelayModes[DELAY_MODES]={"Comb filter", "Allpass filter"}; | ^~~~~~~~~~~~~ modules.c:314:51: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 314 | char* modDelayModes[DELAY_MODES]={"Comb filter", "Allpass filter"}; | ^~~~~~~~~~~~~~~~ modules.c:315:34: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 315 | char* modSlewModes[SLEW_MODES]={"Linear", "Logarithmic"}; | ^~~~~~~~ modules.c:315:44: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 315 | char* modSlewModes[SLEW_MODES]={"Linear", "Logarithmic"}; | ^~~~~~~~~~~~~ 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}; | ^ 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}; | ^ 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] 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; | ^ 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; | ^~~ 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; | ^ In file included from buffermm.h:16, from modules.c:19: modules.c: At top level: 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) | ^~~~~~~~ modules.c:378:1: note: in expansion of macro ‘MODULE_FUNC’ 378 | MODULE_FUNC(kbd) { return *mod=pitch[v]/OUTPUTFREQ; } | ^~~~~~~~~~~ modules.c: In function ‘modfunc_kbd’: 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:378:1: note: in expansion of macro ‘MODULE_FUNC’ 378 | MODULE_FUNC(kbd) { return *mod=pitch[v]/OUTPUTFREQ; } | ^~~~~~~~~~~ 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:378:1: note: in expansion of macro ‘MODULE_FUNC’ 378 | MODULE_FUNC(kbd) { return *mod=pitch[v]/OUTPUTFREQ; } | ^~~~~~~~~~~ modules.c: At top level: modules.h:29:39: warning: no previous prototype for ‘modfunc_modulator’ [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:380:1: note: in expansion of macro ‘MODULE_FUNC’ 380 | MODULE_FUNC(modulator) { | ^~~~~~~~~~~ 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) | ~~~~~~^~~~ modules.c:380:1: note: in expansion of macro ‘MODULE_FUNC’ 380 | MODULE_FUNC(modulator) { | ^~~~~~~~~~~ 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:380:1: note: in expansion of macro ‘MODULE_FUNC’ 380 | MODULE_FUNC(modulator) { | ^~~~~~~~~~~ modules.c: At top level: modules.h:29:39: warning: no previous prototype for ‘modfunc_output’ [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:390:1: note: in expansion of macro ‘MODULE_FUNC’ 390 | MODULE_FUNC(output) { return ms[0]*(*mod); } | ^~~~~~~~~~~ modules.c: In function ‘modfunc_output’: 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:390:1: note: in expansion of macro ‘MODULE_FUNC’ 390 | MODULE_FUNC(output) { return ms[0]*(*mod); } | ^~~~~~~~~~~ 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:390:1: note: in expansion of macro ‘MODULE_FUNC’ 390 | MODULE_FUNC(output) { return ms[0]*(*mod); } | ^~~~~~~~~~~ modules.c: At top level: 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) | ^~~~~~~~ modules.c:393:1: note: in expansion of macro ‘MODULE_FUNC’ 393 | MODULE_FUNC(accent) { | ^~~~~~~~~~~ modules.c: In function ‘modfunc_accent’: 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:393:1: note: in expansion of macro ‘MODULE_FUNC’ 393 | MODULE_FUNC(accent) { | ^~~~~~~~~~~ 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) { | ^~~~~~~~~~~ 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) | ^~~~~~~~ modules.c:398:1: note: in expansion of macro ‘MODULE_FUNC’ 398 | MODULE_FUNC(vco) // phase-accumulating oscillator w/ suboscillator | ^~~~~~~~~~~ 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]); | ^~~~~ modules.c:407:17: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 407 | mod_fdata[1]-=floor(mod_fdata[1]); | ^~~~~ 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; | ^ 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)) | ^~~~~~ 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)); | ^ modules.c:426:23: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 426 | out+=ms[3]*(noise_x2*(2.0f/0xffffffff)); | ^ In file included from buffermm.h:16, from modules.c:19: modules.c: At top level: 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) | ^~~~~~~~~~~ modules.c: In function ‘modfunc_lfo’: modules.c:440:17: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 440 | mod_fdata[0]-=floor(mod_fdata[0]); | ^~~~~ 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; | ^ modules.c:442:3: warning: switch missing default case [-Wswitch-default] 442 | switch((int)(*mod)) { | ^~~~~~ In file included from buffermm.h:16, from modules.c:19: 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 | ^~~~~~~~~~~ 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 | ^~~~ In file included from buffermm.h:16, from modules.c:19: 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:453:1: note: in expansion of macro ‘MODULE_FUNC’ 453 | MODULE_FUNC(env) // linear adsr envelope generator | ^~~~~~~~~~~ modules.c: At top level: 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 | ^~~~~~~~~~~ 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] | ^ modules.c:489:5: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 489 | r=sqrt(q); | ^~~~ modules.c:496:3: warning: switch missing default case [-Wswitch-default] 496 | switch((int)(*mod)) { | ^~~~~~ In file included from buffermm.h:16, from modules.c:19: 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:475:1: note: in expansion of macro ‘MODULE_FUNC’ 475 | MODULE_FUNC(vcf) // 12db/oct resonant state variable low-/high-/bandpass filter | ^~~~~~~~~~~ modules.c: At top level: modules.h:29:39: warning: no previous prototype for ‘modfunc_delay’ [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:509:1: note: in expansion of macro ‘MODULE_FUNC’ 509 | MODULE_FUNC(delay) | ^~~~~~~~~~~ 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) | ^ modules.c:515:12: note: in expansion of macro ‘mod_ldata’ 515 | writeptr=mod_ldata[2]; | ^~~~~~~~~ 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 | ^~ modules.c:534:16: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 534 | mod_ldata[2]=(writeptr+1)%loopend; | ^ In file included from buffermm.h:16, from modules.c:19: 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:509:1: note: in expansion of macro ‘MODULE_FUNC’ 509 | MODULE_FUNC(delay) | ^~~~~~~~~~~ modules.c: At top level: modules.h:29:39: warning: no previous prototype for ‘modfunc_dist’ [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:540:1: note: in expansion of macro ‘MODULE_FUNC’ 540 | MODULE_FUNC(dist) { // simple clipping distort | ^~~~~~~~~~~ modules.c: In function ‘modfunc_dist’: modules.c:545:28: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 545 | if (fabs(out)>1.0) out = out/fabs(out); | ^~~ In file included from buffermm.h:16, from modules.c:19: 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:540:1: note: in expansion of macro ‘MODULE_FUNC’ 540 | MODULE_FUNC(dist) { // simple clipping distort | ^~~~~~~~~~~ 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:540:1: note: in expansion of macro ‘MODULE_FUNC’ 540 | MODULE_FUNC(dist) { // simple clipping distort | ^~~~~~~~~~~ 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:540:1: note: in expansion of macro ‘MODULE_FUNC’ 540 | MODULE_FUNC(dist) { // simple clipping distort | ^~~~~~~~~~~ modules.c: At top level: modules.h:29:39: warning: no previous prototype for ‘modfunc_resample’ [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:569:1: note: in expansion of macro ‘MODULE_FUNC’ 569 | MODULE_FUNC(resample) { // sample-and-hold | ^~~~~~~~~~~ modules.c: In function ‘modfunc_resample’: 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:569:1: note: in expansion of macro ‘MODULE_FUNC’ 569 | MODULE_FUNC(resample) { // sample-and-hold | ^~~~~~~~~~~ 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:569:1: note: in expansion of macro ‘MODULE_FUNC’ 569 | MODULE_FUNC(resample) { // sample-and-hold | ^~~~~~~~~~~ modules.c: At top level: modules.h:29:39: warning: no previous prototype for ‘modfunc_cv’ [-Wmissing-prototypes] 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; } | ^~~~~~~~~~~ modules.c: In function ‘modfunc_cv’: 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:583:1: note: in expansion of macro ‘MODULE_FUNC’ 583 | MODULE_FUNC(cv) { return *mod; } | ^~~~~~~~~~~ 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:583:1: note: in expansion of macro ‘MODULE_FUNC’ 583 | MODULE_FUNC(cv) { return *mod; } | ^~~~~~~~~~~ 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; } | ^~~~~~~~~~~ modules.c: At top level: 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]; } | ^~~~~~~~~~~ modules.c: In function ‘modfunc_amp’: 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]; } | ^~~~~~~~~~~ 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:584:1: note: in expansion of macro ‘MODULE_FUNC’ 584 | MODULE_FUNC(amp) { return ms[0]*ms[1]; } | ^~~~~~~~~~~ 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:584:1: note: in expansion of macro ‘MODULE_FUNC’ 584 | MODULE_FUNC(amp) { return ms[0]*ms[1]; } | ^~~~~~~~~~~ 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) | ^~~~~~~~ modules.c:585:1: note: in expansion of macro ‘MODULE_FUNC’ 585 | MODULE_FUNC(att) { return ms[0]* *mod; } | ^~~~~~~~~~~ modules.c: In function ‘modfunc_att’: 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; } | ^~~~~~~~~~~ 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; } | ^~~~~~~~~~~ modules.c: At top level: 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) | ^~~~~~~~ modules.c:586:1: note: in expansion of macro ‘MODULE_FUNC’ 586 | MODULE_FUNC(mixer) { return ms[0]+ms[1]+ms[2]+ms[3]; } | ^~~~~~~~~~~ modules.c: In function ‘modfunc_mixer’: 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]; } | ^~~~~~~~~~~ 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]; } | ^~~~~~~~~~~ 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:586:1: note: in expansion of macro ‘MODULE_FUNC’ 586 | MODULE_FUNC(mixer) { return ms[0]+ms[1]+ms[2]+ms[3]; } | ^~~~~~~~~~~ modules.c: At top level: 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 | ^~~~~~~~~~~ modules.c: In function ‘modfunc_lpf24’: modules.c:613:19: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 613 | return mod_ddata[3]; //out4; | ^ In file included from buffermm.h:16, from modules.c:19: 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:590:1: note: in expansion of macro ‘MODULE_FUNC’ 590 | MODULE_FUNC(lpf24) { // 24db/oct four-pole low pass | ^~~~~~~~~~~ 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:590:1: note: in expansion of macro ‘MODULE_FUNC’ 590 | MODULE_FUNC(lpf24) { // 24db/oct four-pole low pass | ^~~~~~~~~~~ modules.c: At top level: modules.h:29:39: warning: no previous prototype for ‘modfunc_bitcrush’ [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:625:1: note: in expansion of macro ‘MODULE_FUNC’ 625 | MODULE_FUNC(bitcrush) { | ^~~~~~~~~~~ modules.c: In function ‘modfunc_bitcrush’: modules.c:627:12: warning: conversion from ‘float’ to ‘int’ may change value [-Wfloat-conversion] 627 | int rate=ms[1]*32766+1; | ^~ modules.c:628:10: warning: conversion from ‘float’ to ‘int’ may change value [-Wfloat-conversion] 628 | int in=ms[0]*32767; | ^~ In file included from buffermm.h:16, from modules.c:19: 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:625:1: note: in expansion of macro ‘MODULE_FUNC’ 625 | MODULE_FUNC(bitcrush) { | ^~~~~~~~~~~ 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:625:1: note: in expansion of macro ‘MODULE_FUNC’ 625 | MODULE_FUNC(bitcrush) { | ^~~~~~~~~~~ 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:625:1: note: in expansion of macro ‘MODULE_FUNC’ 625 | MODULE_FUNC(bitcrush) { | ^~~~~~~~~~~ modules.c: At top level: modules.h:29:39: warning: no previous prototype for ‘modfunc_slew’ [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:641:1: note: in expansion of macro ‘MODULE_FUNC’ 641 | MODULE_FUNC(slew) { // slew limiter: ms[0] = cv input, ms[1] = rate | ^~~~~~~~~~~ modules.c: In function ‘modfunc_slew’: modules.c:29:20: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 29 | #define mod_ddata ((double*)data) | ^ modules.c:644:12: note: in expansion of macro ‘mod_ddata’ 644 | float fp=mod_ddata[0]; | ^~~~~~~~~ modules.c:647:5: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 647 | k=((int)(*mod)) ? -log2(1-ms[1]) : ms[1]; | ^ In file included from buffermm.h:16, from modules.c:19: 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:641:1: note: in expansion of macro ‘MODULE_FUNC’ 641 | MODULE_FUNC(slew) { // slew limiter: ms[0] = cv input, ms[1] = rate | ^~~~~~~~~~~ modules.c: At top level: modules.h:29:39: warning: no previous prototype for ‘modfunc_envdet’ [-Wmissing-prototypes] 29 | #define MODULE_FUNC(X) float modfunc_ ##X (unsigned char v, float *mod, void *data, float *ms) | ^~~~~~~~ modules.c:658:1: note: in expansion of macro ‘MODULE_FUNC’ 658 | MODULE_FUNC(envdet) { // envelope follower: ms[0] = input, ms[1] = attack, ms[2] = release | ^~~~~~~~~~~ modules.c: In function ‘modfunc_envdet’: modules.c:663:23: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 663 | float attack_coef = exp(log(0.01)/ms[1]); | ^~~ modules.c:664:24: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 664 | float release_coef = exp(log(0.01)/ms[2]); | ^~~ modules.c:666:13: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 666 | float tmp=fabs(ms[0]); | ^~~~ In file included from buffermm.h:16, from modules.c:19: 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:658:1: note: in expansion of macro ‘MODULE_FUNC’ 658 | MODULE_FUNC(envdet) { // envelope follower: ms[0] = input, ms[1] = attack, ms[2] = release | ^~~~~~~~~~~ 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:658:1: note: in expansion of macro ‘MODULE_FUNC’ 658 | MODULE_FUNC(envdet) { // envelope follower: ms[0] = input, ms[1] = attack, ms[2] = release | ^~~~~~~~~~~ modules.c: At top level: modules.h:29:39: warning: no previous prototype for ‘modfunc_supersaw’ [-Wmissing-prototypes] 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) { | ^~~~~~~~~~~ modules.c: In function ‘modfunc_supersaw’: modules.c:692:12: warning: conversion from ‘double’ to ‘int’ may change value [-Wfloat-conversion] 692 | m_detune=(127 * clamp(ms[1])); | ^ modules.c:693:9: warning: conversion from ‘double’ to ‘int’ may change value [-Wfloat-conversion] 693 | m_mix=(127 * clamp(ms[2])); | ^ modules.c:683:25: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 683 | #define sawtooth(ac) (1.0+2.0*sqrt(ac)) | ^ modules.c:698:10: note: in expansion of macro ‘sawtooth’ 698 | out+=sawtooth(mod_fdata[i])*supersaw_mix[m_mix][i]; | ^~~~~~~~ modules.c:700:19: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 700 | mod_fdata[i]-=floor(mod_fdata[i]); | ^~~~~ 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] | ^ modules.c:706:5: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 706 | r=sqrt(q); | ^~~~ In file included from buffermm.h:16, from modules.c:19: 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) { | ^~~~~~~~~~~ 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) { | ^~~~~~~~~~~ In function ‘strncat’, inlined from ‘filedialog_keyboard’ at filedialog.c:250:7: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:135:10: warning: ‘__builtin___strncat_chk’ specified bound 512 equals destination size [-Wstringop-truncation] 135 | return __builtin___strncat_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘strncat’, inlined from ‘filedialog_keyboard’ at filedialog.c:247:5: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:135:10: warning: ‘__builtin___strncat_chk’ specified bound 512 equals destination size [-Wstringop-overflow=] 135 | return __builtin___strncat_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __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:135:10: warning: ‘__builtin___strncat_chk’ specified bound 512 equals destination size [-Wstringop-overflow=] 135 | return __builtin___strncat_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ 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-N2eCT2/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-N2eCT2/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); | ^~~ 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); | ^~~ In file included from buffermm.h:16, from sequencer.h:19, from sequencer.c:13: modules.h:152:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 152 | void calc_supersaw_tables(); | ^~~~ 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 patch.h:21, from patch.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 synthesizer.h:29, from patch.h:21, from patch.c:13: 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(); | ^~~ In file included from patch.h:21, from patch.c:13: 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, from patch.h:21, from patch.c:13: fileops.h:62:6: note: previous declaration of ‘synth_stackify’ with type ‘void(int)’ 62 | void synth_stackify(int syn); | ^~~~~~~~~~~~~~ In file included from patch.h:21, from patch.c:13: synthesizer.h:85:5: warning: redundant redeclaration of ‘synth_trace’ [-Wredundant-decls] 85 | int synth_trace(int syn, int pm, int fifo); | ^~~~~~~~~~~ In file included from synthesizer.h:31, from patch.h:21, from patch.c:13: 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: 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); | ^ In file included from widgets.h:23, from pattern.h:22, from pattern.c:13: modules.h:152:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 152 | void calc_supersaw_tables(); | ^~~~ 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); | ^ patch.c:174:7: warning: switch missing default case [-Wswitch-default] 174 | switch (key) { | ^~~~~~ 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) | ~~~~^ patch.c:201:34: warning: unused parameter ‘y’ [-Wunused-parameter] 201 | void patch_mouse_drag(int x, int y) | ~~~~^ pattern.c: In function ‘pattern_init’: 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; | ^~~~~~ pattern.c:100:6: warning: old-style function definition [-Wold-style-definition] 100 | void pattern_init() | ^~~~~~~~~~~~ pattern.c: At top level: pattern.c:119:6: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 119 | void pattern_toggleplayback() | ^~~~~~~~~~~~~~~~~~~~~~ pattern.c: In function ‘pattern_toggleplayback’: pattern.c:119:6: warning: old-style function definition [-Wold-style-definition] 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"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ 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) | ^~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ pattern.c: In function ‘pattern_cursorpos’: pattern.c:46:27: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 46 | #define PIANOROLL_OCTAVES 6 | ^ pattern.c:148:16: note: in expansion of macro ‘PIANOROLL_OCTAVES’ 148 | lineheight=PIANOROLL_OCTAVES*12 - (((coct+PIANOROLL_OCTAVES)*12)-MAX_NOTE); | ^~~~~~~~~~~~~~~~~ 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"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ pattern.c:153:41: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 153 | x < (PIANOROLL_X + (pattlen[cpatt]*(beats_per_measure*beatdiv))*PIANOROLL_CELLWIDTH + 1) && | ^ pattern.c:153:24: warning: conversion from ‘unsigned int’ to ‘float’ may change value [-Wconversion] 153 | x < (PIANOROLL_X + (pattlen[cpatt]*(beats_per_measure*beatdiv))*PIANOROLL_CELLWIDTH + 1) && | ^ pattern.c:37:29: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 37 | #define PIANOROLL_X KB_WIDTH+5.5 | ^ pattern.c:158:17: note: in expansion of macro ‘PIANOROLL_X’ 158 | cx=(int)((x-PIANOROLL_X)/PIANOROLL_CELLWIDTH)-1; | ^~~~~~~~~~~ pattern.c:159:20: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 159 | cy=abs((int)((y-PIANOROLL_Y-2)/PIANOROLL_CELLHEIGHT)); | ^ 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 ]; | ^~~~~~~~ pattern.c: In function ‘pattern_mouse_hover’: patch.c:334:15: warning: switch missing default case [-Wswitch-default] 334 | switch(modModulatorTypes[mod[csynth][mi].type]) { | ^~~~~~ pattern.c:171:33: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 171 | patt_ui[B_PREV]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); | ^ pattern.c:171:36: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 171 | patt_ui[B_PREV]=hovertest_box(x, y, 14, DS_HEIGHT-14, 16, 16); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~ pattern.c:172:33: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 172 | patt_ui[B_NEXT]=hovertest_box(x, y, 64, DS_HEIGHT-14, 16, 16); | ^ In file included from synthesizer.h:28, from patch.h:21, from patch.c:13: 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:172:36: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 172 | patt_ui[B_NEXT]=hovertest_box(x, y, 64, DS_HEIGHT-14, 16, 16); | ^ pattern.c:173:36: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 173 | patt_ui[B_SHORTER]=hovertest_box(x, y, 98, DS_HEIGHT-14, 16, 16); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:29, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:173:39: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 173 | patt_ui[B_SHORTER]=hovertest_box(x, y, 98, DS_HEIGHT-14, 16, 16); | ^ pattern.c:174:35: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 174 | patt_ui[B_LONGER]=hovertest_box(x, y, 180, DS_HEIGHT-14, 16, 16); | ^ pattern.c:174:38: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 174 | patt_ui[B_LONGER]=hovertest_box(x, y, 180, DS_HEIGHT-14, 16, 16); | ^ pattern.c:175:34: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 175 | patt_ui[B_OCTDN]=hovertest_box(x, y, 12, PIANOROLL_Y+16, 16, 16); | ^ pattern.c:175:37: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 175 | patt_ui[B_OCTDN]=hovertest_box(x, y, 12, PIANOROLL_Y+16, 16, 16); | ^ pattern.c:176:34: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 176 | patt_ui[B_OCTUP]=hovertest_box(x, y, 32, PIANOROLL_Y+16, 16, 16); | ^ pattern.c:176:37: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 176 | patt_ui[B_OCTUP]=hovertest_box(x, y, 32, PIANOROLL_Y+16, 16, 16); | ^ pattern.c:177:36: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 177 | patt_ui[B_PREVSYN]=hovertest_box(x, y, 214, DS_HEIGHT-14, 16, 16); | ^ pattern.c:177:39: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 177 | patt_ui[B_PREVSYN]=hovertest_box(x, y, 214, DS_HEIGHT-14, 16, 16); | ^ pattern.c:178:36: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 178 | patt_ui[B_NEXTSYN]=hovertest_box(x, y, 430, DS_HEIGHT-14, 16, 16); | ^ pattern.c:178:39: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 178 | patt_ui[B_NEXTSYN]=hovertest_box(x, y, 430, DS_HEIGHT-14, 16, 16); | ^ pattern.c:180:38: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 180 | patt_ui[B_PATTCLEAR]=hovertest_box(x, y, 555, DS_HEIGHT-14, 16, 16) | (patt_ui[B_PATTCLEAR]&8); | ^ In file included from synthesizer.h:28, from patch.h:21, from patch.c:13: 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); | ~~~~~~^~~~~ pattern.c:180:41: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 180 | patt_ui[B_PATTCLEAR]=hovertest_box(x, y, 555, DS_HEIGHT-14, 16, 16) | (patt_ui[B_PATTCLEAR]&8); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~ pattern.c:182:33: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 182 | patt_ui[B_COPY]=hovertest_box(x,y,622, DS_HEIGHT-14, 16, 16); | ^ In file included from synthesizer.h:28, from patch.h:21, from patch.c:13: 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:182:35: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 182 | patt_ui[B_COPY]=hovertest_box(x,y,622, DS_HEIGHT-14, 16, 16); | ^ pattern.c:183:34: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 183 | patt_ui[B_PASTE]=hovertest_box(x,y,644, DS_HEIGHT-14, 16, 16); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~~ pattern.c:183:36: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 183 | patt_ui[B_PASTE]=hovertest_box(x,y,644, DS_HEIGHT-14, 16, 16); | ^ In file included from synthesizer.h:28, from patch.h:21, from patch.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~~~~~ pattern.c:186:37: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 186 | patt_ui[B_PATTPLAY]=hovertest_box(x, y, 482, DS_HEIGHT-14, 16, 42); | ^ In file included from synthesizer.h:28, from patch.h:21, from patch.c:13: dialog.h:24:31: note: expected ‘void *’ but argument is of type ‘void (*)(int, int, int)’ 24 | void dialog_bindspecial(void *specialfunc); | ~~~~~~^~~~~~~~~~~ pattern.c:186:40: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 186 | patt_ui[B_PATTPLAY]=hovertest_box(x, y, 482, DS_HEIGHT-14, 16, 42); | ^ 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!"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ 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)); | ^ 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, | ^ In file included from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: synthesizer.h:84:6: warning: redundant redeclaration of ‘synth_stackify’ [-Wredundant-decls] 84 | void synth_stackify(int syn); | ^~~~~~~~~~~~~~ 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)); | ^~~~~~~~~~~ pattern.c:195:79: warning: conversion from ‘unsigned int’ to ‘float’ may change value [-Wconversion] 195 | piano_start, (DS_WIDTH-(PIANOROLL_X+4))/PIANOROLL_CELLWIDTH, pattlen[cpatt]*(beats_per_measure*beatdiv)); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ patch.c: In function ‘patch_keyboard’: In file included from synthesizer.h:31, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: fileops.h:62:6: note: previous declaration of ‘synth_stackify’ with type ‘void(int)’ 62 | void synth_stackify(int syn); | ^~~~~~~~~~~~~~ In file included from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: synthesizer.h:85:5: warning: redundant redeclaration of ‘synth_trace’ [-Wredundant-decls] 85 | int synth_trace(int syn, int pm, int fifo); | ^~~~~~~~~~~ patch.c:378:3: warning: switch missing default case [-Wswitch-default] 378 | switch (key) { | ^~~~~~ In file included from synthesizer.h:31, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:367:44: warning: unused parameter ‘x’ [-Wunused-parameter] 367 | void patch_keyboard(unsigned char key, int x, int y) | ~~~~^ pattern.c: In function ‘pattern_mouse_drag’: patch.c:367:51: warning: unused parameter ‘y’ [-Wunused-parameter] 367 | void patch_keyboard(unsigned char key, int x, int y) | ~~~~^ pattern.c:218:23: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 218 | cip=pattlen[cpatt]*(beats_per_measure*beatdiv); // cells in pattern | ^ 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_keyboardup’: pattern.c:220:10: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 220 | f=((x-slide_drag_xofs)/(sbw-slw))*(cip-cos); | ^ In file included from sequencer.c:13: sequencer.h:33:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 33 | void sequencer_init(); | ^~~~ pattern.c:221:33: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 221 | piano_start=slide_drag_start+f; | ^ patch.c:401:46: warning: unused parameter ‘x’ [-Wunused-parameter] 401 | void patch_keyboardup(unsigned char key, int x, int y) | ~~~~^ pattern.c:221:17: warning: conversion from ‘float’ to ‘int’ may change value [-Wfloat-conversion] 221 | piano_start=slide_drag_start+f; | ^~~~~~~~~~~~~~~~ patch.c:401:53: warning: unused parameter ‘y’ [-Wunused-parameter] 401 | void patch_keyboardup(unsigned char key, int x, int y) | ~~~~^ 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); | ^ 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: In function ‘patch_specialkey’: sequencer.h:80:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 80 | void sequencer_bpm_close_dialog(); | ^~~~ 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) | ~~~~^ 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: In function ‘patch_draw’: sequencer.c:171:6: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 171 | void sequencer_init() | ^~~~~~~~~~~~~~ sequencer.c: In function ‘sequencer_init’: 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"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c:171:6: warning: old-style function definition [-Wold-style-definition] patch.c:460:19: warning: conversion from ‘int’ to ‘GLfloat’ {aka ‘float’} may change value [-Wconversion] 460 | glVertex2f(x+16, 8+m*16-yd); | ~^~~ In file included from pattern.h:19, from pattern.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ 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; | ^ 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; | ^ 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; | ^ sequencer.c: At top level: sequencer.c:240:6: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 240 | void sequencer_toggleplayback() { | ^~~~~~~~~~~~~~~~~~~~~~~~ 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; | ^ sequencer.c: In function ‘sequencer_toggleplayback’: sequencer.c:240:6: warning: old-style function definition [-Wold-style-definition] 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--; | ^ 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--; | ^ 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])) { | ^ 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])) { | ^ 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]; | ^ 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]; | ^ 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])) { | ^ pattern.c:308:113: 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]; | ^ 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])) { | ^ pattern.c:308:96: 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]; | ^ 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) | ^~~~~~~~~~~~~~~~~~~ sequencer.c: In function ‘sequencer_cursorpos’: pattern.c:328:34: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 328 | for(i=0; i (SEQUENCER_Y + (seqch+2)*SEQUENCER_CELLHEIGHT) && | ^ patch.c:461:31: warning: conversion from ‘int’ to ‘GLfloat’ {aka ‘float’} may change value [-Wconversion] 461 | glVertex2f(x+380, 8+m*16-yd); | ~~~~~~^~~ 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); | ^ 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; | ^~~~~~~~~~ patch.c:462:19: warning: conversion from ‘int’ to ‘GLfloat’ {aka ‘float’} may change value [-Wconversion] 462 | glVertex2f(x+380, 24+m*16-yd); | ~^~~~ sequencer.c: At top level: pattern.c:364:25: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 364 | slide_drag_xofs=x; | ^ patch.c:462:32: warning: conversion from ‘int’ to ‘GLfloat’ {aka ‘float’} may change value [-Wconversion] 462 | glVertex2f(x+380, 24+m*16-yd); | ~~~~~~~^~~ 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) && | ^ patch.c:463:19: warning: conversion from ‘int’ to ‘GLfloat’ {aka ‘float’} may change value [-Wconversion] 463 | glVertex2f(x+16, 24+m*16-yd); | ~^~~ sequencer.c:338:24: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 338 | y > (SEQUENCER_Y + (seqch+3)*SEQUENCER_CELLHEIGHT) && | ^ patch.c:463:32: warning: conversion from ‘int’ to ‘GLfloat’ {aka ‘float’} may change value [-Wconversion] 463 | glVertex2f(x+16, 24+m*16-yd); | ~~~~~~~^~~ sequencer.c:339:24: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 339 | y < (SEQUENCER_Y + (seqch+4)*SEQUENCER_CELLHEIGHT+4) | ^ pattern.c:243:60: warning: unused parameter ‘y’ [-Wunused-parameter] 243 | void pattern_mouse_click(int button, int state, int x, int y) | ~~~~^ sequencer.c:341:20: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 341 | return (int)((x-SEQUENCER_X)/SEQUENCER_CELLWIDTH); | ^ 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); | ~^~~ sequencer.c: In function ‘sequencer_mouse_hover’: 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); | ~~~~~~~~^~~ 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); | ^ pattern.c: In function ‘pattern_keyboard’: 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); | ^ 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); | ~^~~ 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--; | ^ 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); | ^ 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: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--; | ^ 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); | ^ 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); | ~^~~~ 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:416:3: warning: switch missing default case [-Wswitch-default] 416 | switch (key) { | ^~~~~~ 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); | ~~~~~~~~^~~ 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); | ^ pattern.c:412:46: warning: unused parameter ‘x’ [-Wunused-parameter] 412 | void pattern_keyboard(unsigned char key, int x, int y) | ~~~~^ 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); | ^ pattern.c:412:53: warning: unused parameter ‘y’ [-Wunused-parameter] 412 | void pattern_keyboard(unsigned char key, int x, int y) | ~~~~^ 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); | ^ 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 ]); | ~~~~~~~~~~~~~~~^~~~~~ 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); | ^ pattern.c: In function ‘pattern_specialkey’: 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); | ^ pattern.c:455:3: warning: switch missing default case [-Wswitch-default] 455 | switch(key) | ^~~~~~ 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); | ^ pattern.c:453:48: warning: unused parameter ‘x’ [-Wunused-parameter] 453 | void pattern_specialkey(unsigned char key, int x, int y) | ~~~~^ patch.c:478:5: warning: switch missing default case [-Wswitch-default] 478 | switch(modModulatorTypes[mod[csynth][mi].type]) | ^~~~~~ 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); | ^ pattern.c:453:55: warning: unused parameter ‘y’ [-Wunused-parameter] 453 | void pattern_specialkey(unsigned char key, int x, int y) | ~~~~^ 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); | ^ 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); | ^ 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); | ~^~~~ pattern.c: In function ‘pattern_keyboardup’: 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); | ^ 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); | ~~~~~~~~^~~ pattern.c:485:48: warning: unused parameter ‘x’ [-Wunused-parameter] 485 | void pattern_keyboardup(unsigned char key, int x, int y) | ~~~~^ 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); | ^ pattern.c:485:55: warning: unused parameter ‘y’ [-Wunused-parameter] 485 | void pattern_keyboardup(unsigned char key, int x, int y) | ~~~~^ 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); | ^ 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); | ^ 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]); | ^ pattern.c: In function ‘pattern_draw’: 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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]); | ^~~ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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, | ^ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: 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: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, | ^ 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]); | ^~~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: 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:382:4: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 382 | seq_start, (DS_WIDTH-(SEQUENCER_X+4))/SEQUENCER_CELLWIDTH, seqsonglen); | ^~~~~~~~~ pattern.c:529:95: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 529 | glVertex2f(PIANOROLL_X, PIANOROLL_Y-(j*PIANOROLL_CELLHEIGHT)); | ^ 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); | ^~~~~~~~~~ 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]); | ^~~ sequencer.c:393:24: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 393 | y < (SEQUENCER_Y + (seqch+3)*SEQUENCER_CELLHEIGHT) | ^ 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 pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: 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:396:15: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 396 | m=(int)((y-SEQUENCER_Y)/SEQUENCER_CELLHEIGHT); | ^ 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)); | ^ 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]); | ^~~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: 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:30: warning: conversion from ‘unsigned int’ to ‘float’ may change value [-Wconversion] 530 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(j*PIANOROLL_CELLHEIGHT)); | ^ sequencer.c: In function ‘sequencer_mouse_drag’: pattern.c:530:120: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 530 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(j*PIANOROLL_CELLHEIGHT)); | ^ sequencer.c:412:9: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 412 | cip=seqsonglen; //pattlen[cpatt]*16; // cells in pattern | ^~~~~~~~~~ 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]); | ^~~~ sequencer.c:414:30: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 414 | f=((x-seqslide_drag_xofs)/(sbw-slw))*(cip-cos); | ^ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: 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:531:46: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 531 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-((j+1)*PIANOROLL_CELLHEIGHT)); | ^ 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; | ^~~~~~~~~~~~~~~~~~~ pattern.c:531:74: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 531 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-((j+1)*PIANOROLL_CELLHEIGHT)); | ^ 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]); | ^~~~ sequencer.c:416:42: warning: conversion from ‘float’ to ‘int’ may change value [-Wfloat-conversion] 416 | if (seq_start>(1+cip-cos)) seq_start=(1+cip-cos); | ^ pattern.c:531:30: warning: conversion from ‘unsigned int’ to ‘float’ may change value [-Wconversion] 531 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-((j+1)*PIANOROLL_CELLHEIGHT)); | ^ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: 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:531:120: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 531 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-((j+1)*PIANOROLL_CELLHEIGHT)); | ^ 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]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: 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:532:95: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 532 | glVertex2f(PIANOROLL_X, PIANOROLL_Y-((j+1)*PIANOROLL_CELLHEIGHT)); | ^ sequencer.c: In function ‘sequencer_mouse_click’: 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]); | ^~~~ 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:22, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: 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 pattern.h:19, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ pattern.c:540:44: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 540 | glVertex2f(PIANOROLL_X, PIANOROLL_Y-(j*PIANOROLL_CELLHEIGHT)); | ^ 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"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ pattern.c:541:43: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 541 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(j*PIANOROLL_CELLHEIGHT)); | ^ 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); | ^~~~~~~~~~~~~~~~~~~ pattern.c:541:71: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 541 | glVertex2f(PIANOROLL_X+(pattlen[cpatt]*(beats_per_measure*beatdiv)-piano_start)*PIANOROLL_CELLWIDTH, PIANOROLL_Y-(j*PIANOROLL_CELLHEIGHT)); | ^ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:541:27: warning: conversion from ‘unsigned 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)); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ~~~~~~^~~~~ 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)); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:46:27: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 46 | #define PIANOROLL_OCTAVES 6 | ^ pattern.c:550:16: note: in expansion of macro ‘PIANOROLL_OCTAVES’ 550 | lineheight=PIANOROLL_OCTAVES*12 - (((coct+PIANOROLL_OCTAVES)*12)-MAX_NOTE); | ^~~~~~~~~~~~~~~~~ pattern.c:553:42: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 553 | for(i=0,j=piano_start;j<(pattlen[cpatt]*(beats_per_measure*beatdiv)+1);i++,j++) { | ^ 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]]; | ^ 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++) { | ^ 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]]; | ^ 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)) { | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~ pattern.c:560:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare] 560 | if ((j%b)==0 && j<(pattlen[cpatt]*b)) { | ^ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ~~~~~~^~~~~ pattern.c:563:40: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 563 | render_text(tmps, 2.5+PIANOROLL_X+(i*PIANOROLL_CELLWIDTH), round(PIANOROLL_Y+PIANOROLL_CELLHEIGHT), 2, 0xffa0a0a0, 0); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:569:27: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 569 | glVertex2f(PIANOROLL_X+i*PIANOROLL_CELLWIDTH, round(PIANOROLL_Y+PIANOROLL_CELLHEIGHT)); | ^ 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"); | ^~~~~~~~~~~~~ In file included from synthesizer.h:29, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: dotfile.h:18:30: note: expected ‘char *’ but argument is of type ‘const char *’ 18 | char *dotfile_getvalue(char *key); | ~~~~~~^~~ pattern.c:570:27: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 570 | glVertex2f(PIANOROLL_X+i*PIANOROLL_CELLWIDTH, round(PIANOROLL_Y-lineheight)); //(PIANOROLL_OCTAVES*12)*PIANOROLL_CELLHEIGHT))); | ^ patch.c: In function ‘patch_draw_modulator’: 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); | ^~~~~~~ pattern.c:570:51: warning: conversion from ‘double’ to ‘GLfloat’ {aka ‘float’} may change value [-Wfloat-conversion] 570 | glVertex2f(PIANOROLL_X+i*PIANOROLL_CELLWIDTH, round(PIANOROLL_Y-lineheight)); //(PIANOROLL_OCTAVES*12)*PIANOROLL_CELLHEIGHT))); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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); | ^~ In file included from synthesizer.h:30, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: filedialog.h:58:44: note: expected ‘char *’ but argument is of type ‘const char *’ 58 | void filedialog_open(filedialog *fd, char *ext, char *path); | ~~~~~~^~~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: 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: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); | ^~~~~~~~~~~~~~~~~~~~ pattern.c:577:19: warning: conversion to ‘long unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 577 | ticks=playpos / (OUTPUTFREQ/(bpm*256/60)); // calc tick from sample index | ^ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~~ pattern.c:577:11: warning: conversion to ‘long int’ from ‘long unsigned int’ may change the sign of the result [-Wsign-conversion] 577 | ticks=playpos / (OUTPUTFREQ/(bpm*256/60)); // calc tick from sample index | ^~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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]); | ^~~ 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); | ^~~~~~~~~~~~~~~~~~~~~ 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 | ^ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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 file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: 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:517:29: warning: ISO C forbids passing argument 1 of ‘dialog_bindkeyboard’ between function pointer and ‘void *’ [-Wpedantic] 517 | dialog_bindkeyboard(&sequencer_file_keyboard); | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~ pattern.c:581:9: warning: conversion from ‘long int’ to ‘int’ may change value [-Wconversion] 581 | i=(ticks>>6)-piano_start; | ^ 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]); | ^~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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 pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from patch.h:21, from patch.c:13: 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:522:34: warning: passing argument 1 of ‘dotfile_getvalue’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 522 | songdir=dotfile_getvalue("songFileDir"); | ^~~~~~~~~~~~~ In file included from synthesizer.h:29, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: dotfile.h:18:30: note: expected ‘char *’ but argument is of type ‘const char *’ 18 | char *dotfile_getvalue(char *key); | ~~~~~~^~~ 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)); | ^ 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); | ~~~~~~~~~~~~~~~^~~~~~ 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); | ^~~~~~~ In file included from synthesizer.h:30, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:575:11: warning: assignment to ‘unsigned int *’ from incompatible pointer type ‘long unsigned int *’ [-Wincompatible-pointer-types] 575 | fptr=(unsigned long*)(&rf); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~ 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))); | ^ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~~ 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); | ~~~~~~~~~~~~~~~^~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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++) { | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: In function ‘patch_modulator_hover’: 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); | ^~~~~~~~~~~~~~~~~~~~ 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++) { | ^ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: dialog.h:31:28: note: expected ‘void *’ but argument is of type ‘void (*)(int, int)’ 31 | void dialog_binddrag(void *dragfunc); | ~~~~~~^~~~~~~~ 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); | ^ 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); | ^ 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); | ^ 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); | ^~~~~~~~~~~ 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!"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ 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); | ^ 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); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~ 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); | ^ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~~~~~ 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); | ^ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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: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]]; | ^ patch.c: In function ‘patch_modulator_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 )) { | ^ 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]]; | ^~~~~~~~~~ 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); | ^ 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 )) { | ^ 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); | ^ sequencer.c:624:24: warning: passing argument 1 of ‘console_post’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 624 | console_post("Patterns"); | ^~~~~~~~~~ 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 pattern.h:19, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ 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 )) { | ^ 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); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~~ 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); | ~~~~~~~~~~~~~~~^~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:618:5: warning: switch missing default case [-Wswitch-default] 618 | switch(modModulatorTypes[mod[csynth][mi].type]) { | ^~~~~~ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ 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, | ^~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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; | ^~ pattern.c:607:26: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 607 | l+PIANOROLL_X+i*PIANOROLL_CELLWIDTH+1, | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~~ 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; | ^~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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; | ^~ pattern.c:608:26: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 608 | PIANOROLL_Y-2-(n-coct*12+1)*PIANOROLL_CELLHEIGHT, | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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; | ^~~~~~ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: In function ‘patch_modulator_special’: 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); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ 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, | ^~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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 ]); | ~~~~~~~~~~~~~~~^~~~~~ 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, | ^ 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); | ~~~~~~~~~~~~~~~^~~~~~ 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); | ^ patch.c:662:43: warning: unused parameter ‘x’ [-Wunused-parameter] 662 | void patch_modulator_special(int key, int x, int y) | ~~~~^ 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:662:50: warning: unused parameter ‘y’ [-Wunused-parameter] 662 | void patch_modulator_special(int key, int x, int y) | ~~~~^ 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); | ^ patch.c: In function ‘patch_modulator_keyboard’: 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); | ^ 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: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); | ^ patch.c:735:5: warning: switch missing default case [-Wswitch-default] 735 | switch(modModulatorTypes[mod[csynth][mi].type]) { | ^~~~~~ 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); | ^ 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: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); | ^ patch.c: In function ‘knob_scale2float’: patch.c:770:46: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 770 | case SCALE_FREQUENCY_TEMPO: return (value*bpm)/(60*OUTPUTFREQ); | ^ 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: In function ‘sequencer_keyboard’: patch.c:771:47: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 771 | case SCALE_DURATION_TEMPO: return (60/(bpm*value))*OUTPUTFREQ; | ^ 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"); | ^~~~~~~~~~~~~ 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]; | ^~~~~~~~ In file included from synthesizer.h:29, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~ 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); | ^ In file included from synthesizer.h:30, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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: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); | ^~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ~~~~~~^~~~~ 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: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); | ^~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~~~~~ 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); | ^ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: dialog.h:31:28: note: expected ‘void *’ but argument is of type ‘void (*)(int, int)’ 31 | void dialog_binddrag(void *dragfunc); | ~~~~~~^~~~~~~~ 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:716:30: warning: passing argument 1 of ‘dotfile_getvalue’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 716 | songdir=dotfile_getvalue("songFileDir"); | ^~~~~~~~~~~~~ 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; In file included from synthesizer.h:29, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: dotfile.h:18:30: note: expected ‘char *’ but argument is of type ‘const char *’ 18 | char *dotfile_getvalue(char *key); | ~~~~~~^~~ 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); | ^ 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); | ^~~~~~~ In file included from synthesizer.h:30, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:776:38: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 776 | case SCALE_NOTE_INTERVAL: return pow(1.059463094, value); | ^~~~~~~~~~~~~~~~~~~~~~~ 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); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~ patch.c:767:3: warning: switch missing default case [-Wswitch-default] 767 | switch(scale) { | ^~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: In function ‘knob_float2scale’: 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); | ^~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ~~~~~~^~~~~ 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); | ^ patch.c:786:61: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 786 | case SCALE_FREQUENCY_TEMPO: return (value*60*OUTPUTFREQ)/bpm; | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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: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]) { | ^~ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~ patch.c:787:61: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 787 | case SCALE_DURATION_TEMPO: return (OUTPUTFREQ*60)/(value*bpm); | ^ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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); | ^~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: dialog.h:31:28: note: expected ‘void *’ but argument is of type ‘void (*)(int, int)’ 31 | void dialog_binddrag(void *dragfunc); | ~~~~~~^~~~~~~~ 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); | ^ 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); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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]]; | ^ 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); | ~~~~~~~~~~~~~~^~~~~~~~~~~ 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); | ^ 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]]; | ^ patch.c:783:3: warning: switch missing default case [-Wswitch-default] 783 | switch(scale) { | ^~~~~~ 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); | ^ 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) { | ^~~~~~ 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); | ^ 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) | ~~~~^ 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); | ^ sequencer.c: In function ‘sequencer_draw’: 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); | ^ 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)); | ^ 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); | ^ 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)); | ^ 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); | ^ sequencer.c:768:42: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 768 | glVertex2f(SEQUENCER_X, SEQUENCER_Y+((seqch+2)*SEQUENCER_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]; | ^~~~~~~~ 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)); | ^ 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); | ^ sequencer.c:770:42: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 770 | glVertex2f(SEQUENCER_X, SEQUENCER_Y+((seqch+3)*SEQUENCER_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); | ^ 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)); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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); | ^ 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))); | ^ 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); | ^ 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))); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ pattern.c:683:35: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 683 | PIANOROLL_Y-1-(kpkeydown-coct*12)*PIANOROLL_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 | ^ 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, | ^ 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 | ^ 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, | ^ 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 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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, | ^ 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; | ^ pattern.c:686:35: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 686 | PIANOROLL_Y-1-(kpkeydown-coct*12)*PIANOROLL_CELLHEIGHT); | ^ 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; | ^~~~~~~~~~ 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, | ^ sequencer.c:807:16: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 807 | if ((sx+sl) > SEQUENCER_X) { | ^ 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]); | ^~~~ In file included from pattern.h:22, from pattern.c:13: 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: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]); | ^~~~ In file included from pattern.h:22, from pattern.c:13: 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: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]); | ^~~~ In file included from pattern.h:22, from pattern.c:13: 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: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]); | ^~~~ In file included from pattern.h:22, from pattern.c:13: 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: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]); | ^~~~ In file included from pattern.h:22, from pattern.c:13: 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: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]); | ^~~~ In file included from pattern.h:22, from pattern.c:13: 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: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]); | ^~~~ In file included from pattern.h:22, from pattern.c:13: 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: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]); | ^~~~ In file included from pattern.h:22, from pattern.c:13: 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: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]); | ^~~ In file included from pattern.h:22, from pattern.c:13: 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: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]); | ^~~ In file included from pattern.h:22, from pattern.c:13: 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: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]); | ^~~ In file included from pattern.h:22, from pattern.c:13: 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: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; | ^~~~~~~~~~ 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); | ^~ 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 ); | ^ 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 ); | ^ sequencer.c:899:30: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 899 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start) *SEQUENCER_CELLWIDTH, SEQUENCER_Y+(1+seq_hover_ch)*SEQUENCER_CELLHEIGHT ); | ^ sequencer.c:899:92: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 899 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start) *SEQUENCER_CELLWIDTH, SEQUENCER_Y+(1+seq_hover_ch)*SEQUENCER_CELLHEIGHT ); | ^ sequencer.c:910:28: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 910 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start) *SEQUENCER_CELLWIDTH, SEQUENCER_Y+(2+seqch)*SEQUENCER_CELLHEIGHT ); | ^ sequencer.c:910:90: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 910 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start) *SEQUENCER_CELLWIDTH, SEQUENCER_Y+(2+seqch)*SEQUENCER_CELLHEIGHT ); | ^ sequencer.c:911:28: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 911 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start+1)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(2+seqch)*SEQUENCER_CELLHEIGHT ); | ^ sequencer.c:911:90: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 911 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start+1)*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(2+seqch)*SEQUENCER_CELLHEIGHT ); | ^ sequencer.c:912:28: 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 ); | ^ 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 ); | ^ sequencer.c:913:28: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 913 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start) *SEQUENCER_CELLWIDTH, SEQUENCER_Y+(3+seqch)*SEQUENCER_CELLHEIGHT ); | ^ sequencer.c:913:90: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 913 | glVertex2f( SEQUENCER_X+(seq_hover_meas-seq_start) *SEQUENCER_CELLWIDTH, SEQUENCER_Y+(3+seqch)*SEQUENCER_CELLHEIGHT ); | ^ sequencer.c:922:41: warning: conversion to ‘unsigned int’ from ‘int’ may change the sign of the result [-Wsign-conversion] 922 | pl=seq_repeat[i][seq_drag_pattstart]*pattlen[seq_pattern[i][seq_drag_pattstart]]; | ^ sequencer.c:922:8: warning: conversion to ‘int’ from ‘unsigned int’ may change the sign of the result [-Wsign-conversion] 922 | pl=seq_repeat[i][seq_drag_pattstart]*pattlen[seq_pattern[i][seq_drag_pattstart]]; | ^~~~~~~~~~ sequencer.c:925:19: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 925 | sx=SEQUENCER_X+(j-seq_start)*SEQUENCER_CELLWIDTH; | ^ sequencer.c:928:12: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 928 | if ((sx+sl) > SEQUENCER_X) { | ^ sequencer.c:930:11: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 930 | sl-=(SEQUENCER_X-sx); | ^~ sequencer.c:930:13: warning: conversion from ‘float’ to ‘int’ may change value [-Wfloat-conversion] 930 | sl-=(SEQUENCER_X-sx); | ^ sequencer.c:936:41: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 936 | glVertex2f( sx+1, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); | ^ sequencer.c:937:23: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 937 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); | ^ sequencer.c:937:39: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 937 | glVertex2f( sx+sl, SEQUENCER_Y+ i *SEQUENCER_CELLHEIGHT); | ^ sequencer.c:938:23: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 938 | glVertex2f( sx+sl, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); | ^ sequencer.c:938:39: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 938 | glVertex2f( sx+sl, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); | ^ sequencer.c:939:41: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 939 | glVertex2f( sx+1, SEQUENCER_Y+(1+i)*SEQUENCER_CELLHEIGHT-1 ); | ^ sequencer.c:947:7: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 947 | f=seq_render_start - seq_start; | ^~~~~~~~~~~~~~~~ sequencer.c:951:62: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 951 | glVertex2f(SEQUENCER_X+f*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(seqch+3)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:955:7: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 955 | f=seq_render_end - seq_start; | ^~~~~~~~~~~~~~ sequencer.c:959:62: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 959 | glVertex2f(SEQUENCER_X+f*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(seqch+3)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:967:8: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 967 | fs=seq_render_start-seq_start; | ^~~~~~~~~~~~~~~~ sequencer.c:969:8: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 969 | fe=seq_render_end-seq_start; | ^~~~~~~~~~~~~~ sequencer.c:974:67: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 974 | glVertex2f(SEQUENCER_X+fs*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(seqch+3)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:975:67: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 975 | glVertex2f(SEQUENCER_X+fe*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(seqch+3)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:988:29: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 988 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, SEQUENCER_Y); | ^ sequencer.c:989:29: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 989 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(seqch+3)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:989:64: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 989 | glVertex2f(SEQUENCER_X+i*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(seqch+3)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:997:9: warning: conversion from ‘long int’ to ‘int’ may change value [-Wconversion] 997 | i=(render_pos / (OUTPUTFREQ/(bpm*256/60))) >> 6; // calc patternpos from sample index | ^ sequencer.c:999:23: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 999 | if (i >= 0 && (i/16.0f) >= seq_start) { | ^ sequencer.c:1000:28: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1000 | f=(float)(i)/16.0f - seq_start; | ^ sequencer.c:1004:66: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1004 | glVertex2f(SEQUENCER_X+f*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(seqch+3)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:1009:7: warning: conversion from ‘long int’ to ‘int’ may change value [-Wconversion] 1009 | i=(render_playpos / (OUTPUTFREQ/(bpm*256/60))) >> 6; // calc patternpos from sample index | ^ sequencer.c:1011:21: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1011 | if (i >= 0 && (i/16.0f) >= seq_start) { | ^ sequencer.c:1012:28: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1012 | f=(float)(i)/16.0f - seq_start; | ^ sequencer.c:1016:64: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1016 | glVertex2f(SEQUENCER_X+f*SEQUENCER_CELLWIDTH, SEQUENCER_Y+(seqch+3)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:1027:32: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1027 | glVertex2f(1, SEQUENCER_Y+j*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:1028:44: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1028 | glVertex2f(SEQUENCER_X-1, SEQUENCER_Y+j*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:1029:44: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1029 | glVertex2f(SEQUENCER_X-1, SEQUENCER_Y+(j+1)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:1030:32: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1030 | glVertex2f(1, SEQUENCER_Y+(j+1)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:1035:44: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1035 | render_text(tmps, 5, SEQUENCER_Y+10.5+SEQUENCER_CELLHEIGHT*j+((SEQUENCER_CELLHEIGHT-14)/2), 2, | ^ sequencer.c:1039:44: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1039 | render_text(tmps, 5, SEQUENCER_Y+10.5+SEQUENCER_CELLHEIGHT*j+((SEQUENCER_CELLHEIGHT-14)/2), 2, | ^ sequencer.c:1048:32: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1048 | glVertex2f(1, SEQUENCER_Y+j*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:1049:44: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1049 | glVertex2f(SEQUENCER_X-1, SEQUENCER_Y+j*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:1050:44: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1050 | glVertex2f(SEQUENCER_X-1, SEQUENCER_Y+(j+1)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:1051:32: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1051 | glVertex2f(1, SEQUENCER_Y+(j+1)*SEQUENCER_CELLHEIGHT); | ^ sequencer.c:1054:41: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1054 | render_text("mod", 5, SEQUENCER_Y+10.5+SEQUENCER_CELLHEIGHT*(seqch+2), 2, 0xffc0c0c0, 0); | ^ sequencer.c:1057:40: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1057 | draw_hslider(SEQUENCER_X, SEQUENCER_Y+(seqch+5)*SEQUENCER_CELLHEIGHT, (DS_WIDTH-(SEQUENCER_X+6)), 12, | ^ sequencer.c:1058:4: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1058 | seq_start, (DS_WIDTH-(SEQUENCER_X+4))/SEQUENCER_CELLWIDTH, seqsonglen, seqslide_hover); | ^~~~~~~~~ sequencer.c:1058:63: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1058 | seq_start, (DS_WIDTH-(SEQUENCER_X+4))/SEQUENCER_CELLWIDTH, seqsonglen, seqslide_hover); | ^~~~~~~~~~ sequencer.c:1062:38: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1062 | draw_button(440, DS_HEIGHT-14, 16, "A", seq_ui[B_REWIND]); | ^~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1063:38: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1063 | draw_button(462, DS_HEIGHT-14, 16, "C", seq_ui[B_CLEAR]); | ^~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1064:43: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1064 | draw_textbox(526, DS_HEIGHT-14, 16, 48, "play", seq_ui[B_SEQPLAY]); | ^~~~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1065:43: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1065 | draw_textbox(578, DS_HEIGHT-14, 16, 48, "render", seq_ui[B_RENDER]); | ^~~~~~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1079:37: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1079 | draw_button(14, DS_HEIGHT-14, 16, "<<", seq_ui[B_DECCH]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1082:37: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1082 | draw_button(80, DS_HEIGHT-14, 16, ">>", seq_ui[B_ADDCH]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1087:39: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1087 | draw_button(222, DS_HEIGHT-14, 16, "<<", seq_ui[B_SSHORTER]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1090:39: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1090 | draw_button(304, DS_HEIGHT-14, 16, ">>", seq_ui[B_SLONGER]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1092:38: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1092 | draw_button(350, DS_HEIGHT-14, 16, "S", seq_ui[B_SAVE_SONG]); | ^~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1093:38: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1093 | draw_button(372, DS_HEIGHT-14, 16, "L", seq_ui[B_LOAD_SONG]); | ^~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1095:43: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1095 | draw_textbox(630, DS_HEIGHT-14, 16, 48, "loop", seq_ui[B_LOOP] | (render_live_loop ? 2 : 0)); | ^~~~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1097:38: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1097 | draw_button(394, DS_HEIGHT-14, 16, "N", seq_ui[B_NEWSONG]); | ^~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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_draw_pattern’: sequencer.c:1114:55: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1114 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 150, 240, "", 0); | ^~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1122:54: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1122 | draw_button((DS_WIDTH/2)-16, (DS_HEIGHT/2)-30, 16, ">>", seq_ui[B_PATT_ADDNUM]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1123:55: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1123 | draw_button((DS_WIDTH/2)-102, (DS_HEIGHT/2)-30, 16, "<<", seq_ui[B_PATT_DECNUM]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1128:55: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1128 | draw_button((DS_WIDTH/2)+102, (DS_HEIGHT/2)-30, 16, ">>", seq_ui[B_PATT_ADDREP]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1129:54: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1129 | draw_button((DS_WIDTH/2)+16, (DS_HEIGHT/2)-30, 16, "<<", seq_ui[B_PATT_DECREP]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1134:54: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1134 | draw_button((DS_WIDTH/2)+102, (DS_HEIGHT/2)-4, 16, ">>", seq_ui[B_PATT_ADDTRANS]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1135:53: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1135 | draw_button((DS_WIDTH/2)-16, (DS_HEIGHT/2)-4, 16, "<<", seq_ui[B_PATT_DECTRANS]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1140:55: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1140 | draw_button((DS_WIDTH/2)+102, (DS_HEIGHT/2)+32, 16, ">>", seq_ui[B_PATT_NEXTPATCH]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1141:55: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1141 | draw_button((DS_WIDTH/2)-102, (DS_HEIGHT/2)+32, 16, "<<", seq_ui[B_PATT_PREVPATCH]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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_pattern_hover’: sequencer.c:1150:39: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1150 | seq_ui[B_PATT_ADDNUM]=hovertest_box(x, y, (DS_WIDTH/2)-16, (DS_HEIGHT/2)-30, 16, 16); | ^ sequencer.c:1150:42: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1150 | seq_ui[B_PATT_ADDNUM]=hovertest_box(x, y, (DS_WIDTH/2)-16, (DS_HEIGHT/2)-30, 16, 16); | ^ sequencer.c:1151:39: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1151 | seq_ui[B_PATT_DECNUM]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)-30, 16, 16); | ^ sequencer.c:1151:42: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1151 | seq_ui[B_PATT_DECNUM]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)-30, 16, 16); | ^ sequencer.c:1152:39: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1152 | seq_ui[B_PATT_ADDREP]=hovertest_box(x, y,(DS_WIDTH/2)+102, (DS_HEIGHT/2)-30, 16, 16); | ^ sequencer.c:1152:42: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1152 | seq_ui[B_PATT_ADDREP]=hovertest_box(x, y,(DS_WIDTH/2)+102, (DS_HEIGHT/2)-30, 16, 16); | ^ shader.c:43:8: warning: no previous prototype for ‘loadshader’ [-Wmissing-prototypes] 43 | GLuint loadshader(char *fname, GLuint type) | ^~~~~~~~~~ sequencer.c:1153:39: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1153 | seq_ui[B_PATT_DECREP]=hovertest_box(x, y,(DS_WIDTH/2)+16, (DS_HEIGHT/2)-30, 16, 16); | ^ sequencer.c:1153:42: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1153 | seq_ui[B_PATT_DECREP]=hovertest_box(x, y,(DS_WIDTH/2)+16, (DS_HEIGHT/2)-30, 16, 16); | ^ sequencer.c:1154:41: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1154 | seq_ui[B_PATT_ADDTRANS]=hovertest_box(x, y,(DS_WIDTH/2)+102, (DS_HEIGHT/2)-4, 16, 16); | ^ sequencer.c:1154:44: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1154 | seq_ui[B_PATT_ADDTRANS]=hovertest_box(x, y,(DS_WIDTH/2)+102, (DS_HEIGHT/2)-4, 16, 16); | ^ sequencer.c:1155:41: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1155 | seq_ui[B_PATT_DECTRANS]=hovertest_box(x, y,(DS_WIDTH/2)-16, (DS_HEIGHT/2)-4, 16, 16); | ^ sequencer.c:1155:44: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1155 | seq_ui[B_PATT_DECTRANS]=hovertest_box(x, y,(DS_WIDTH/2)-16, (DS_HEIGHT/2)-4, 16, 16); | ^ sequencer.c:1156:36: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1156 | seq_ui[B_PATT_ADD]=hovertest_box(x, y,(DS_WIDTH/2)+40, (DS_HEIGHT/2)+60, 16, 100); | ^ sequencer.c:1156:39: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1156 | seq_ui[B_PATT_ADD]=hovertest_box(x, y,(DS_WIDTH/2)+40, (DS_HEIGHT/2)+60, 16, 100); | ^ sequencer.c:1157:42: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1157 | seq_ui[B_PATT_NEXTPATCH]=hovertest_box(x, y, (DS_WIDTH/2)+102, (DS_HEIGHT/2)+32, 16, 16); | ^ sequencer.c:1157:45: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1157 | seq_ui[B_PATT_NEXTPATCH]=hovertest_box(x, y, (DS_WIDTH/2)+102, (DS_HEIGHT/2)+32, 16, 16); | ^ sequencer.c:1158:42: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1158 | seq_ui[B_PATT_PREVPATCH]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)+32, 16, 16); | ^ sequencer.c:1158:45: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1158 | seq_ui[B_PATT_PREVPATCH]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)+32, 16, 16); | ^ sequencer.c: In function ‘sequencer_pattern_click’: sequencer.c:1166:42: 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 )) { | ^ 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 )) { | ^ 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 )) { | ^ sequencer.c:1170:72: 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 )) { | ^ sequencer.c: In function ‘sequencer_pattern_keyboard’: sequencer.c:1201:56: warning: unused parameter ‘x’ [-Wunused-parameter] 1201 | void sequencer_pattern_keyboard(unsigned char key, int x, int y) | ~~~~^ sequencer.c:1201:63: warning: unused parameter ‘y’ [-Wunused-parameter] 1201 | void sequencer_pattern_keyboard(unsigned char key, int x, int y) | ~~~~^ sequencer.c: In function ‘sequencer_draw_channel’: shader.c: In function ‘loadshader’: sequencer.c:1224:55: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1224 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 160, 240, "", 0); | ^~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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); | ~~~~~~^~~~~ shader.c:53:3: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 53 | fread(temp, 1, 65536, f); | ^~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c:1232:55: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1232 | draw_button((DS_WIDTH/2)+102, (DS_HEIGHT/2)-36, 16, ">>", seq_ui[B_CHAN_NEXTSYNTH]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1233:55: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1233 | draw_button((DS_WIDTH/2)-102, (DS_HEIGHT/2)-36, 16, "<<", seq_ui[B_CHAN_PREVSYNTH]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1235:59: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1235 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2)-12, 8, 180, "Envelope hard restart", seq_ui[B_ENVRESTART]); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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: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]); | ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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: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]); | ^~~~~~~~~~~~~~~~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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: 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); | ^ sequencer.c:1243:45: 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); | ^ sequencer.c:1244:42: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1244 | seq_ui[B_CHAN_PREVSYNTH]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)-36, 16, 16); | ^ sequencer.c:1244:45: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1244 | seq_ui[B_CHAN_PREVSYNTH]=hovertest_box(x, y, (DS_WIDTH/2)-102, (DS_HEIGHT/2)-36, 16, 16); | ^ sequencer.c:1246:38: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1246 | seq_ui[B_ENVRESTART]=hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2)-8, 8, 180); | ^ sequencer.c:1246:41: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1246 | seq_ui[B_ENVRESTART]=hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2)-8, 8, 180); | ^ sequencer.c:1248:38: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1248 | seq_ui[B_VCORESTART]=hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2)+4, 8, 180); | ^ sequencer.c:1248:41: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1248 | seq_ui[B_VCORESTART]=hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2)+4, 8, 180); | ^ 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); | ^ 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); | ^ sequencer.c: In function ‘sequencer_channel_click’: 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 )) { | ^ 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 )) { | ^ 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 )) { | ^ 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 )) { | ^ sequencer.c: In function ‘sequencer_channel_keyboard’: sequencer.c:1298:56: warning: unused parameter ‘x’ [-Wunused-parameter] 1298 | void sequencer_channel_keyboard(unsigned char key, int x, int y) | ~~~~^ sequencer.c:1298:63: warning: unused parameter ‘y’ [-Wunused-parameter] 1298 | void sequencer_channel_keyboard(unsigned char key, int x, int y) | ~~~~^ sequencer.c: In function ‘sequencer_draw_render’: 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); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:1326:42: warning: ISO C forbids passing argument 2 of ‘dialog_open’ between function pointer and ‘void *’ [-Wpedantic] 1326 | dialog_open(&sequencer_draw_preview, &sequencer_preview_hover, &sequencer_preview_click); | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:1326:68: warning: ISO C forbids passing argument 3 of ‘dialog_open’ between function pointer and ‘void *’ [-Wpedantic] 1326 | dialog_open(&sequencer_draw_preview, &sequencer_preview_hover, &sequencer_preview_click); | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:1327:25: warning: ISO C forbids passing argument 1 of ‘dialog_bindkeyboard’ between function pointer and ‘void *’ [-Wpedantic] 1327 | dialog_bindkeyboard(&sequencer_preview_keyboard); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: 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:1331:54: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1331 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 80, 240, "", 0); | ^~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1337:56: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1337 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2)+4, 16, 180, "", 0); | ^~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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: In function ‘sequencer_render_hover’: sequencer.c:1351:33: warning: unused parameter ‘x’ [-Wunused-parameter] 1351 | void sequencer_render_hover(int x, int y) | ~~~~^ sequencer.c:1351:40: warning: unused parameter ‘y’ [-Wunused-parameter] 1351 | void sequencer_render_hover(int x, int y) | ~~~~^ sequencer.c: In function ‘sequencer_render_click’: sequencer.c:1363:50: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1363 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ sequencer.c:1363:52: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1363 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ sequencer.c: In function ‘sequencer_render_keyboard’: sequencer.c:1371:55: warning: unused parameter ‘x’ [-Wunused-parameter] 1371 | void sequencer_render_keyboard(unsigned char key, int x, int y) | ~~~~^ sequencer.c:1371:62: warning: unused parameter ‘y’ [-Wunused-parameter] 1371 | void sequencer_render_keyboard(unsigned char key, int x, int y) | ~~~~^ 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); | ^~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1406:72: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1406 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2)-18, 160, (DS_WIDTH*0.8)-20, "", 0); | ^~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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: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); | ^ sequencer.c:1423:33: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1423 | glVertex2f((DS_WIDTH*0.1)+10+i, (DS_HEIGHT/2)-18+s); | ^ sequencer.c:1424:33: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1424 | glVertex2f((DS_WIDTH*0.1)+10+i, (DS_HEIGHT/2)-18-s); | ^ sequencer.c:1452:54: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1452 | draw_button((DS_WIDTH/2)-40, (DS_HEIGHT/2)+92, 16, "i<", seq_ui[B_PREVIEW_REWIND]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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_preview_hover’: sequencer.c:1463:42: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1463 | seq_ui[B_PREVIEW_REWIND]=hovertest_box(x, y, (DS_WIDTH/2)-40, (DS_HEIGHT/2)+92, 16, 16); | ^ sequencer.c:1463:45: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1463 | seq_ui[B_PREVIEW_REWIND]=hovertest_box(x, y, (DS_WIDTH/2)-40, (DS_HEIGHT/2)+92, 16, 16); | ^ sequencer.c:1464:40: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1464 | seq_ui[B_PREVIEW_PLAY]=hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2)+92, 16, 52); | ^ sequencer.c:1464:43: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1464 | seq_ui[B_PREVIEW_PLAY]=hovertest_box(x, y, (DS_WIDTH/2), (DS_HEIGHT/2)+92, 16, 52); | ^ sequencer.c:1475:33: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1475 | seq_render_hover= ((float)(x-((DS_WIDTH*0.1)+10)) / (float)((DS_WIDTH*0.8)-20)) * render_bufferlen; | ^ sequencer.c:1475:85: warning: conversion from ‘long int’ to ‘float’ may change value [-Wconversion] 1475 | seq_render_hover= ((float)(x-((DS_WIDTH*0.1)+10)) / (float)((DS_WIDTH*0.8)-20)) * render_bufferlen; | ^ sequencer.c:1475:23: warning: conversion from ‘float’ to ‘int’ may change value [-Wfloat-conversion] 1475 | seq_render_hover= ((float)(x-((DS_WIDTH*0.1)+10)) / (float)((DS_WIDTH*0.8)-20)) * render_bufferlen; | ^ sequencer.c: In function ‘sequencer_preview_click’: sequencer.c:1508:50: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1508 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),210,(DS_WIDTH*0.8) )) { | ^ sequencer.c:1508:52: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1508 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),210,(DS_WIDTH*0.8) )) { | ^ sequencer.c: In function ‘sequencer_preview_keyboard’: sequencer.c:1516:56: warning: unused parameter ‘x’ [-Wunused-parameter] 1516 | void sequencer_preview_keyboard(unsigned char key, int x, int y) | ~~~~^ sequencer.c:1516:63: warning: unused parameter ‘y’ [-Wunused-parameter] 1516 | void sequencer_preview_keyboard(unsigned char key, int x, int y) | ~~~~^ sequencer.c: In function ‘sequencer_file_keyboard’: sequencer.c:1549:53: warning: unused parameter ‘x’ [-Wunused-parameter] 1549 | void sequencer_file_keyboard(unsigned char key, int x, int y) | ~~~~^ sequencer.c:1549:60: warning: unused parameter ‘y’ [-Wunused-parameter] 1549 | void sequencer_file_keyboard(unsigned char key, int x, int y) | ~~~~^ sequencer.c: In function ‘sequencer_file_checkstate’: sequencer.c:1572:24: warning: passing argument 1 of ‘console_post’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1572 | console_post("Error while saving song!"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ sequencer.c:1582:24: warning: passing argument 1 of ‘console_post’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1582 | console_post("Error while loading song!"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ sequencer.c:1596:24: warning: passing argument 1 of ‘console_post’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1596 | console_post("Song loaded successfully from disk!"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ sequencer.c:1601:24: warning: passing argument 1 of ‘dotfile_setvalue’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1601 | dotfile_setvalue("songFileDir", (char*)&songfd[songfd_active].cpath); | ^~~~~~~~~~~~~ In file included from synthesizer.h:29, from buffermm.h:18, from sequencer.h:19, from sequencer.c:13: dotfile.h:19:28: note: expected ‘char *’ but argument is of type ‘const char *’ 19 | int dotfile_setvalue(char *key, char *value); | ~~~~~~^~~ sequencer.c: In function ‘sequencer_draw_bpm’: sequencer.c:1619:55: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1619 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 160, 240, "", 0); | ^~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1632:55: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1632 | draw_button((DS_WIDTH/2)+102, (DS_HEIGHT/2)-36, 16, ">>", seq_ui[B_BPM_INC]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1633:55: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1633 | draw_button((DS_WIDTH/2)-102, (DS_HEIGHT/2)-36, 16, "<<", seq_ui[B_BPM_DEC]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1638:55: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 1638 | draw_button((DS_WIDTH/2)+102, (DS_HEIGHT/2)-16, 16, ">>", seq_ui[B_TIME_INC]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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: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]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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:1641:3: warning: switch missing default case [-Wswitch-default] 1641 | switch (beatdiv) { | ^~~~~~ 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]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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: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]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from sequencer.h:19, from sequencer.c:13: 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_bpm_hover’: 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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’: sequencer.c:1669:42: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1669 | if (state==GLUT_DOWN && !hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ sequencer.c:1669:44: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 1669 | if (state==GLUT_DOWN && !hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ sequencer.c:1694:9: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation] 1694 | if (beats_per_measure < 16) beats_per_measure++; return; | ^~ sequencer.c:1694:58: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’ 1694 | if (beats_per_measure < 16) beats_per_measure++; return; | ^~~~~~ sequencer.c:1697:9: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation] 1697 | if (beats_per_measure > 1) beats_per_measure--; return; | ^~ sequencer.c:1697:57: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’ 1697 | if (beats_per_measure > 1) beats_per_measure--; return; | ^~~~~~ 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 )) { | ^ 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 )) { | ^ sequencer.c: In function ‘sequencer_bpm_keyboard’: sequencer.c:1718:52: warning: unused parameter ‘x’ [-Wunused-parameter] 1718 | void sequencer_bpm_keyboard(unsigned char key, int x, int y) | ~~~~^ sequencer.c:1718:59: warning: unused parameter ‘y’ [-Wunused-parameter] 1718 | void sequencer_bpm_keyboard(unsigned char key, int x, int y) | ~~~~^ sequencer.c: At top level: sequencer.c:1745:6: warning: function declaration isn’t a prototype [-Wstrict-prototypes] 1745 | void sequencer_bpm_close_dialog() { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c: In function ‘sequencer_bpm_close_dialog’: sequencer.c:1745:6: warning: old-style function definition [-Wold-style-definition] In file included from /usr/include/string.h:519, from shader.h:16, from shader.c:16: In function ‘strncpy’, inlined from ‘shader_init’ at shader.c:75:5: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ output may be truncated copying 511 bytes from a string of length 511 [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ 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); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ 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); | ^~~~~ In file included from widgets.c:14: 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); | ^~~~~ In file included from widgets.c:14: 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); 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); | ^~ 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); | ^ 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); | ^ 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); | ^ 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)); | ^ 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)); | ^ 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)); | ^ 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); | ^ 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); | ^ 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)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 ]); | ^ synthesizer.c:198:7: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 198 | d=sqrt(xd*xd + yd*yd); | ^~~~ 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) | ^~~~~~~~~~~~~~~~~~~~ synthesizer.c: In function ‘synth_open_addmodule’: synthesizer.c:252:21: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 252 | tmpmod[m].x=(DS_WIDTH/2)-222 + m*74; | ^ 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; | ^ 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); | ^~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:22:24: note: expected ‘void *’ but argument is of type ‘void (*)(void)’ 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~ 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); | ^~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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); | ~~~~~~^~~~~ synthesizer.c:266:62: warning: ISO C forbids passing argument 3 of ‘dialog_open’ between function pointer and ‘void *’ [-Wpedantic] 266 | dialog_open(&synth_draw_addmodule, &synth_addmodule_hover, synth_addmodule_click); | ^~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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:267:23: warning: ISO C forbids passing argument 1 of ‘dialog_bindkeyboard’ between function pointer and ‘void *’ [-Wpedantic] 267 | dialog_bindkeyboard(&synth_addmodule_keyboard); | ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:23:32: note: expected ‘void *’ but argument is of type ‘void (*)(unsigned char, int, int)’ 23 | void dialog_bindkeyboard(void *kbfunc); | ~~~~~~^~~~~~ 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); | ^ 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); | ^ synthesizer.c:286:34: 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); | ^ 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); | ^ 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); | ^ 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); | ^ synthesizer.c:288:37: 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); | ^ 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); | ^ 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); | ^ synthesizer.c:290:35: 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); | ^ 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); | ^ 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); | ^ 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); | ^ synthesizer.c: In function ‘synth_mouse_drag’: 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; | ^ synthesizer.c: In function ‘synth_mouse_click’: 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"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ 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"); | ^~~~~~~~~~~~~~ In file included from synthesizer.h:29, from synthesizer.c:13: dotfile.h:18:30: note: expected ‘char *’ but argument is of type ‘const char *’ 18 | char *dotfile_getvalue(char *key); | ~~~~~~^~~ synthesizer.c:419:39: warning: passing argument 2 of ‘filedialog_open’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 419 | filedialog_open(&fd[FD_SAVE], "ksyn", syndir); | ^~~~~~ In file included from synthesizer.h:30, from synthesizer.c:13: filedialog.h:58:44: note: expected ‘char *’ but argument is of type ‘const char *’ 58 | void filedialog_open(filedialog *fd, char *ext, char *path); | ~~~~~~^~~ 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); | ^~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:22:24: note: expected ‘void *’ but argument is of type ‘void (*)(void)’ 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~ 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); | ^~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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); | ~~~~~~^~~~~ 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); | ^~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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:422:29: warning: ISO C forbids passing argument 1 of ‘dialog_bindkeyboard’ between function pointer and ‘void *’ [-Wpedantic] 422 | dialog_bindkeyboard(&synth_file_keyboard); | ^~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:23:32: note: expected ‘void *’ but argument is of type ‘void (*)(unsigned char, int, int)’ 23 | void dialog_bindkeyboard(void *kbfunc); | ~~~~~~^~~~~~ 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); | ^~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:31:28: note: expected ‘void *’ but argument is of type ‘void (*)(int, int)’ 31 | void dialog_binddrag(void *dragfunc); | ~~~~~~^~~~~~~~ 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"); | ^~~~~~~~~~~~~~ In file included from synthesizer.h:29, from synthesizer.c:13: dotfile.h:18:30: note: expected ‘char *’ but argument is of type ‘const char *’ 18 | char *dotfile_getvalue(char *key); | ~~~~~~^~~ synthesizer.c:428:39: warning: passing argument 2 of ‘filedialog_open’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 428 | filedialog_open(&fd[FD_LOAD], "ksyn", syndir); | ^~~~~~ In file included from synthesizer.h:30, from synthesizer.c:13: filedialog.h:58:44: note: expected ‘char *’ but argument is of type ‘const char *’ 58 | void filedialog_open(filedialog *fd, char *ext, char *path); | ~~~~~~^~~ synthesizer.c:430:21: warning: ISO C forbids passing argument 1 of ‘dialog_open’ between function pointer and ‘void *’ [-Wpedantic] 430 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:22:24: note: expected ‘void *’ but argument is of type ‘void (*)(void)’ 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~ synthesizer.c:430:39: warning: ISO C forbids passing argument 2 of ‘dialog_open’ between function pointer and ‘void *’ [-Wpedantic] 430 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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); | ~~~~~~^~~~~ synthesizer.c:430:58: warning: ISO C forbids passing argument 3 of ‘dialog_open’ between function pointer and ‘void *’ [-Wpedantic] 430 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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:431:29: warning: ISO C forbids passing argument 1 of ‘dialog_bindkeyboard’ between function pointer and ‘void *’ [-Wpedantic] 431 | dialog_bindkeyboard(&synth_file_keyboard); | ^~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:23:32: note: expected ‘void *’ but argument is of type ‘void (*)(unsigned char, int, int)’ 23 | void dialog_bindkeyboard(void *kbfunc); | ~~~~~~^~~~~~ synthesizer.c:432:25: warning: ISO C forbids passing argument 1 of ‘dialog_binddrag’ between function pointer and ‘void *’ [-Wpedantic] 432 | dialog_binddrag(&synth_file_drag); | ^~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:31:28: note: expected ‘void *’ but argument is of type ‘void (*)(int, int)’ 31 | void dialog_binddrag(void *dragfunc); | ~~~~~~^~~~~~~~ synthesizer.c:456:23: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 456 | dragoffset_x=x-mod[csynth][m].x; | ^ synthesizer.c:456:22: warning: conversion from ‘float’ to ‘int’ may change value [-Wfloat-conversion] 456 | dragoffset_x=x-mod[csynth][m].x; | ^ synthesizer.c:457:23: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 457 | dragoffset_y=y-mod[csynth][m].y; | ^ synthesizer.c:457:22: warning: conversion from ‘float’ to ‘int’ may change value [-Wfloat-conversion] 457 | dragoffset_y=y-mod[csynth][m].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]; | ^~~~~~~~~~~~~ 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); | ^~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:22:24: note: expected ‘void *’ but argument is of type ‘void (*)(void)’ 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~ 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); | ^~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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); | ~~~~~~^~~~~ 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); | ^~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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:503:29: warning: ISO C forbids passing argument 1 of ‘dialog_bindkeyboard’ between function pointer and ‘void *’ [-Wpedantic] 503 | dialog_bindkeyboard(&synthlabel_keyboard); | ^~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:23:32: note: expected ‘void *’ but argument is of type ‘void (*)(unsigned char, int, int)’ 23 | void dialog_bindkeyboard(void *kbfunc); | ~~~~~~^~~~~~ synthesizer.c: In function ‘synth_keyboard’: 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"); | ^~~~~~~~~~~~~~ In file included from synthesizer.h:29, from synthesizer.c:13: dotfile.h:18:30: note: expected ‘char *’ but argument is of type ‘const char *’ 18 | char *dotfile_getvalue(char *key); | ~~~~~~^~~ 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); | ^~~~~~ In file included from synthesizer.h:30, from synthesizer.c:13: filedialog.h:58:44: note: expected ‘char *’ but argument is of type ‘const char *’ 58 | void filedialog_open(filedialog *fd, char *ext, char *path); | ~~~~~~^~~ 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); | ^~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:22:24: note: expected ‘void *’ but argument is of type ‘void (*)(void)’ 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~ 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); | ^~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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); | ~~~~~~^~~~~ 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); | ^~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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:531:25: warning: ISO C forbids passing argument 1 of ‘dialog_bindkeyboard’ between function pointer and ‘void *’ [-Wpedantic] 531 | dialog_bindkeyboard(&synth_file_keyboard); | ^~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:23:32: note: expected ‘void *’ but argument is of type ‘void (*)(unsigned char, int, int)’ 23 | void dialog_bindkeyboard(void *kbfunc); | ~~~~~~^~~~~~ 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); | ^~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:31:28: note: expected ‘void *’ but argument is of type ‘void (*)(int, int)’ 31 | void dialog_binddrag(void *dragfunc); | ~~~~~~^~~~~~~~ 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"); | ^~~~~~~~~~~~~~ In file included from synthesizer.h:29, from synthesizer.c:13: dotfile.h:18:30: note: expected ‘char *’ but argument is of type ‘const char *’ 18 | char *dotfile_getvalue(char *key); | ~~~~~~^~~ 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); | ^~~~~~ In file included from synthesizer.h:30, from synthesizer.c:13: filedialog.h:58:44: note: expected ‘char *’ but argument is of type ‘const char *’ 58 | void filedialog_open(filedialog *fd, char *ext, char *path); | ~~~~~~^~~ synthesizer.c:540:17: warning: ISO C forbids passing argument 1 of ‘dialog_open’ between function pointer and ‘void *’ [-Wpedantic] 540 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:22:24: note: expected ‘void *’ but argument is of type ‘void (*)(void)’ 22 | void dialog_open(void *draw, void *hover, void *click); | ~~~~~~^~~~ synthesizer.c:540:35: warning: ISO C forbids passing argument 2 of ‘dialog_open’ between function pointer and ‘void *’ [-Wpedantic] 540 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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); | ~~~~~~^~~~~ synthesizer.c:540:54: warning: ISO C forbids passing argument 3 of ‘dialog_open’ between function pointer and ‘void *’ [-Wpedantic] 540 | dialog_open(&synth_draw_file, &synth_file_hover, &synth_file_click); | ^~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: 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:541:25: warning: ISO C forbids passing argument 1 of ‘dialog_bindkeyboard’ between function pointer and ‘void *’ [-Wpedantic] 541 | dialog_bindkeyboard(&synth_file_keyboard); | ^~~~~~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:23:32: note: expected ‘void *’ but argument is of type ‘void (*)(unsigned char, int, int)’ 23 | void dialog_bindkeyboard(void *kbfunc); | ~~~~~~^~~~~~ synthesizer.c:542:21: warning: ISO C forbids passing argument 1 of ‘dialog_binddrag’ between function pointer and ‘void *’ [-Wpedantic] 542 | dialog_binddrag(&synth_file_drag); | ^~~~~~~~~~~~~~~~ In file included from synthesizer.h:28, from synthesizer.c:13: dialog.h:31:28: note: expected ‘void *’ but argument is of type ‘void (*)(int, int)’ 31 | void dialog_binddrag(void *dragfunc); | ~~~~~~^~~~~~~~ synthesizer.c:514:44: warning: unused parameter ‘x’ [-Wunused-parameter] 514 | void synth_keyboard(unsigned char key, int x, int y) | ~~~~^ synthesizer.c:514:51: warning: unused parameter ‘y’ [-Wunused-parameter] 514 | void synth_keyboard(unsigned char key, int x, int y) | ~~~~^ synthesizer.c: In function ‘synth_specialkey’: synthesizer.c:555:3: warning: switch missing default case [-Wswitch-default] 555 | switch(key) | ^~~~~~ synthesizer.c:553:46: warning: unused parameter ‘x’ [-Wunused-parameter] 553 | void synth_specialkey(unsigned char key, int x, int y) | ~~~~^ synthesizer.c:553:53: warning: unused parameter ‘y’ [-Wunused-parameter] 553 | void synth_specialkey(unsigned char key, int x, int y) | ~~~~^ synthesizer.c: In function ‘synth_draw’: 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]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: 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: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]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: 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: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]); | ^~~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: 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: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]); | ^~~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: 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_modulator_keyboard’: synthesizer.c:631:38: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 631 | draw_button(372, DS_HEIGHT-14, 16, "L", synth_ui[B_LOAD]); | ^~~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: 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:743:16: warning: array subscript ‘long unsigned int[0]’ is partly outside array bounds of ‘float[1]’ [-Warray-bounds] 743 | *fptr&=fmask; | ^~ synthesizer.c:633:38: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 633 | draw_button(394, DS_HEIGHT-14, 16, "C", synth_ui[B_CLEAR]); | ^~~ patch.c:721:9: note: while referencing ‘f’ 721 | float f; | ^ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: 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:743:16: 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: while referencing ‘f’ 721 | float f; | ^ synthesizer.c: In function ‘synth_addmodule’: synthesizer.c:662:34: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 662 | xd=(DS_WIDTH/10)*i - mod[csynth][k].x; | ^ synthesizer.c:663:35: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 663 | yd=(DS_HEIGHT/10)*j - mod[csynth][k].y; | ^ synthesizer.c:664:17: warning: conversion from ‘double’ to ‘float’ may change value [-Wfloat-conversion] 664 | d=sqrt(xd*xd+yd*yd); | ^~~~ synthesizer.c:671:24: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 671 | mod[csynth][m].x=bmi; | ^~~ synthesizer.c:672:24: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 672 | mod[csynth][m].y=bmj; | ^~~ synthesizer.c: In function ‘synth_draw_addmodule’: synthesizer.c:704:55: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 704 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 260, 526, "", 0); | ^~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: 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); | ~~~~~~^~~~~ synthesizer.c: In function ‘synth_addmodule_click’: 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; } | ^ synthesizer.c:732:45: 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; } | ^ synthesizer.c:734:50: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 734 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),260,526)) { | ^ synthesizer.c:734:52: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 734 | if (button==GLUT_RIGHT_BUTTON && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),260,526)) { | ^ synthesizer.c: In function ‘synth_addmodule_keyboard’: synthesizer.c:747:54: warning: unused parameter ‘x’ [-Wunused-parameter] 747 | void synth_addmodule_keyboard(unsigned char key, int x, int y) | ~~~~^ synthesizer.c:747:61: warning: unused parameter ‘y’ [-Wunused-parameter] 747 | void synth_addmodule_keyboard(unsigned char key, int x, int y) | ~~~~^ synthesizer.c: In function ‘synth_file_keyboard’: synthesizer.c:770:49: warning: unused parameter ‘x’ [-Wunused-parameter] 770 | void synth_file_keyboard(unsigned char key, int x, int y) | ~~~~^ synthesizer.c:770:56: warning: unused parameter ‘y’ [-Wunused-parameter] 770 | void synth_file_keyboard(unsigned char key, int x, int y) | ~~~~^ synthesizer.c: In function ‘synth_file_checkstate’: synthesizer.c:796:35: warning: passing argument 1 of ‘console_post’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 796 | if (r) { console_post("Writing to file failed (KBNK chunk)"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ synthesizer.c:802:26: warning: passing argument 1 of ‘console_post’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 802 | console_post("Writing to file failed (KSYN chunk)"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ synthesizer.c:806:24: warning: passing argument 1 of ‘console_post’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 806 | console_post("Unable to open file for writing!"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ synthesizer.c:824:28: warning: passing argument 1 of ‘console_post’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 824 | console_post("Reading file failed (KBNK chunk)"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ synthesizer.c:827:26: warning: passing argument 1 of ‘console_post’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 827 | console_post("Readinf file failed (KSYN chunk)"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ synthesizer.c:831:24: warning: passing argument 1 of ‘console_post’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 831 | console_post("Unable to open file for reading!"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from pattern.h:19, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: console.h:23:25: note: expected ‘char *’ but argument is of type ‘const char *’ 23 | void console_post(char *msg); | ~~~~~~^~~ synthesizer.c:837:24: warning: passing argument 1 of ‘dotfile_setvalue’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 837 | dotfile_setvalue("synthFileDir", (char*)&fd[fd_active].cpath); | ^~~~~~~~~~~~~~ In file included from synthesizer.h:29, from synthesizer.c:13: dotfile.h:19:28: note: expected ‘char *’ but argument is of type ‘const char *’ 19 | int dotfile_setvalue(char *key, char *value); | ~~~~~~^~~ synthesizer.c: In function ‘synthlabel_draw’: synthesizer.c:852:55: warning: passing argument 5 of ‘draw_textbox’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 852 | draw_textbox((DS_WIDTH/2), (DS_HEIGHT/2), 160, 320, "", 0); | ^~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: 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); | ~~~~~~^~~~~ synthesizer.c:874:57: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 874 | draw_button((DS_WIDTH/2)+112, (DS_HEIGHT/2)+32, 16, ">>", synth_ui[B_LABEL_INCSCALE]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: 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:875:57: warning: passing argument 4 of ‘draw_button’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 875 | draw_button((DS_WIDTH/2)-52, (DS_HEIGHT/2)+32, 16, "<<", synth_ui[B_LABEL_DECSCALE]); | ^~~~ In file included from pattern.h:22, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: 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: In function ‘synthlabel_hover’: synthesizer.c:888:40: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 888 | synth_label_kbfocus|=hovertest_box(x, y, (DS_WIDTH/2)+30, (DS_HEIGHT/2)-32, 16, 180); | ^ synthesizer.c:888:43: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 888 | synth_label_kbfocus|=hovertest_box(x, y, (DS_WIDTH/2)+30, (DS_HEIGHT/2)-32, 16, 180); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ 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); | ^ synthesizer.c: In function ‘synthlabel_click’: 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; } | ^ synthesizer.c:904:45: 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; } | ^ 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); | ^ synthesizer.c:922:45: warning: conversion from ‘double’ to ‘unsigned char’ may change value [-Wfloat-conversion] 922 | mod[csynth][synth_label_edit].color=floor(hue); | ^~~~~ synthesizer.c:933:70: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 933 | if (button==GLUT_RIGHT_BUTTON && state==GLUT_DOWN && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ synthesizer.c:933:72: warning: conversion from ‘int’ to ‘float’ may change value [-Wconversion] 933 | if (button==GLUT_RIGHT_BUTTON && state==GLUT_DOWN && hovertest_box(x,y,(DS_WIDTH/2),(DS_HEIGHT/2),150,240 )) { | ^ synthesizer.c: In function ‘synthlabel_keyboard’: synthesizer.c:944:49: warning: unused parameter ‘x’ [-Wunused-parameter] 944 | void synthlabel_keyboard(unsigned char key, int x, int y) | ~~~~^ synthesizer.c:944:56: warning: unused parameter ‘y’ [-Wunused-parameter] 944 | void synthlabel_keyboard(unsigned char key, int x, int y) | ~~~~^ 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); | ^~ ~~~~~ In file included from /usr/include/stdio.h:866, from patch.h:16, from patch.c:13: /usr/include/x86_64-linux-gnu/bits/stdio2.h:38:10: note: ‘__builtin___sprintf_chk’ output 5 or more bytes (assuming 132) into a destination of size 128 38 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 39 | __glibc_objsize (__s), __fmt, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 40 | __va_arg_pack ()); | ~~~~~~~~~~~~~~~~~ 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); | ^~ ~~~~~ In file included from /usr/include/stdio.h:866, from patch.h:16, from patch.c:13: /usr/include/x86_64-linux-gnu/bits/stdio2.h:38:10: note: ‘__builtin___sprintf_chk’ output 5 or more bytes (assuming 132) into a destination of size 128 38 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 39 | __glibc_objsize (__s), __fmt, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 40 | __va_arg_pack ()); | ~~~~~~~~~~~~~~~~~ In file included from /usr/include/string.h:519, 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 console.h:17, from pattern.h:19, from buffermm.h:17, from synthesizer.h:25, from synthesizer.c:13: In function ‘strncpy’, inlined from ‘synthlabel_keyboard’ at synthesizer.c:953:5, inlined from ‘synthlabel_keyboard’ at synthesizer.c:944:6: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ sequencer.c: In function ‘sequencer_file_checkstate.part.0’: sequencer.c:1574:40: warning: ‘%s’ directive writing up to 254 bytes into a region of size 241 [-Wformat-overflow=] 1574 | sprintf(tmps, "Song saved as %s", fn); | ^~ ~~ In file included from /usr/include/stdio.h:866, from sequencer.h:16, from sequencer.c:13: /usr/include/x86_64-linux-gnu/bits/stdio2.h:38:10: note: ‘__builtin___sprintf_chk’ output between 15 and 269 bytes into a destination of size 255 38 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 39 | __glibc_objsize (__s), __fmt, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 40 | __va_arg_pack ()); | ~~~~~~~~~~~~~~~~~ In function ‘strncpy’, inlined from ‘synthlabel_click’ at synthesizer.c:934:5: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: warning: ‘__builtin_strncpy’ output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ 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; | ~~~~~~^~~ synthesizer.c:52:13: note: while referencing ‘mod’ 52 | synthmodule mod[MAX_SYNTH][MAX_MODULES]; | ^~~ synthesizer.c: In function ‘synth_clear’: synthesizer.c:146:12: warning: array subscript 64 is above array bounds of ‘synthmodule[64]’ [-Warray-bounds] 146 | mod[csyn][m].outputpos=0; | ~~~~~~~~~^~~ synthesizer.c:52:13: note: while referencing ‘mod’ 52 | synthmodule mod[MAX_SYNTH][MAX_MODULES]; | ^~~ synthesizer.c: In function ‘synth_file_checkstate.part.0’: synthesizer.c:798:62: warning: ‘%s’ directive writing up to 254 bytes into a region of size 225 [-Wformat-overflow=] 798 | sprintf(tmps, "Synthesizer %s saved to disk as %s", synthname[csynth], fn); | ^~ ~~ In file included from /usr/include/stdio.h:866, from synthesizer.h:18, from synthesizer.c:13: /usr/include/x86_64-linux-gnu/bits/stdio2.h:38:10: note: ‘__builtin___sprintf_chk’ output 31 or more bytes (assuming 285) into a destination of size 255 38 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 39 | __glibc_objsize (__s), __fmt, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 40 | __va_arg_pack ()); | ~~~~~~~~~~~~~~~~~ gcc -g -O2 -ffile-prefix-map=/build/komposter-N2eCT2/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 -frelease -L/usr/local/lib -o komposter about.o audio.o bezier.o buffermm.o console.o dialog.o dotfile.o filedialog.o fileops.o font.o main.o modules.o patch.o pattern.o sequencer.o shader.o synthesizer.o widgets.o -lpthread -lm -lGLU -lGL -lglut -lfreetype -lopenal make[2]: Leaving directory '/build/komposter-N2eCT2/komposter-0+git20201216+ds' make[1]: Leaving directory '/build/komposter-N2eCT2/komposter-0+git20201216+ds' dh: command-omitted: The call to "dh_auto_test -a" was omitted due to "DEB_BUILD_OPTIONS=nocheck" create-stamp debian/debhelper-build-stamp dh_prep -a dh_auto_install --destdir=debian/komposter/ -a make -j10 install DESTDIR=/build/komposter-N2eCT2/komposter-0\+git20201216\+ds/debian/komposter AM_UPDATE_INFO_DIR=no make[1]: Entering directory '/build/komposter-N2eCT2/komposter-0+git20201216+ds' make[2]: Entering directory '/build/komposter-N2eCT2/komposter-0+git20201216+ds' make[2]: Nothing to be done for 'install-data-am'. /bin/mkdir -p '/build/komposter-N2eCT2/komposter-0+git20201216+ds/debian/komposter/usr/bin' /usr/bin/install -c komposter '/build/komposter-N2eCT2/komposter-0+git20201216+ds/debian/komposter/usr/bin' make[2]: Leaving directory '/build/komposter-N2eCT2/komposter-0+git20201216+ds' make[1]: Leaving directory '/build/komposter-N2eCT2/komposter-0+git20201216+ds' dh_install -a dh_installdocs -a dh_installchangelogs -a dh_installexamples -a dh_perl -a dh_link -a dh_strip_nondeterminism -a dh_compress -a dh_fixperms -a dh_missing -a dh_dwz -a dh_strip -a dh_makeshlibs -a dh_shlibdeps -a dh_installdeb -a dh_gencontrol -a dh_md5sums -a dh_builddeb -a 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=any -O../komposter_0+git20201216+ds-2_amd64.buildinfo dpkg-genchanges --build=any -O../komposter_0+git20201216+ds-2_amd64.changes dpkg-genchanges: info: binary-only arch-specific upload (source code and arch-indep packages not included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) I: running special hook: sync-out /build/komposter-N2eCT2 /tmp/komposter-0+git20201216+ds-29f3mu2ou I: cleaning package lists and apt cache... I: removing tempdir /tmp/mmdebstrap.sG_OJ2YXiJ... I: success in 2703.3573 seconds md5: komposter-dbgsym_0+git20201216+ds-2_amd64.deb: OK md5: komposter_0+git20201216+ds-2_amd64.deb: OK sha1: komposter-dbgsym_0+git20201216+ds-2_amd64.deb: OK sha1: komposter_0+git20201216+ds-2_amd64.deb: OK sha256: komposter-dbgsym_0+git20201216+ds-2_amd64.deb: OK sha256: komposter_0+git20201216+ds-2_amd64.deb: OK Checksums: OK