lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: clang compiler warnings


From: Luca Fascione
Subject: Re: clang compiler warnings
Date: Tue, 27 Feb 2024 04:14:17 -0800

I'd just make the cast explicit:

inline constexpr vsize VPOS (vsize(-1));

It's cleaner and requires less updates as the code evolves.

However, I can't reproduce it, what compiler flags are you using?
I'm using -Wall and clang is quiet about this use case

*/tmp %* g++ -Wall -std=c++17 xxx.cc

*/tmp %* cat xxx.cc

#include <iostream>


inline constexpr size_t x(-1);


int main()

{

  std::cout << x << std::endl;

}

*/tmp %* g++ --version

Apple clang version 15.0.0 (clang-1500.1.0.2.5)

Target: x86_64-apple-darwin23.3.0

Thread model: posix

InstalledDir: /Library/Developer/CommandLineTools/usr/bin

*/tmp %* ./a.out

18446744073709551615

*/tmp %*


L

On Tue, 27 Feb 2024, 12:57 Aaron Hill, <lilypond@hillvisions.com> wrote:

> On 2024-02-27 3:32 am, Werner LEMBERG wrote:
> > Looking at some MacPorts log files from Mac OS 14.2.1 (which uses the
> > system's `clang` compiler) I see
> >
> > ```
> > flower/include/flower-proto.hh:26:30:
> >   warning: implicit conversion changes signedness:
> >            'int' to 'const vsize' (aka 'const unsigned long')
> >            [-Wsign-conversion]
> > inline constexpr vsize VPOS (-1);
> >                        ~~~~  ^~
> > ```
> >
> > for almost all C++ fies, making the log file quite noisy.  Dan, any
> > idea how to fix this gracefully?
>
> Since vsize is just a typedef of size_t, would it make sense to use
> SIZE_MAX when defined VPOS instead of a manual cast of negative one?
>
>
> -- Aaron Hill
>
>


reply via email to

[Prev in Thread] Current Thread [Next in Thread]