MSYS2 build warnings and error with exiv2 v0.27.3

Issue #119 resolved
Gaaned92 created an issue

ART version: 1.4.1-40-gcac71919f

GCC :9.3.0

exiv2 v0.27.3

built with -DEXIV2_ENABLE_WIN_UNICODE=On

edit: same with -DEXIV2_ENABLE_WIN_UNICODE=Off

I get this error

D:/ART/ARTSOURCE/ART/rtengine/procparams.cc: In member function 'int rtengine::procparams::ResizeParams::get_width() const':
D:/ART/ARTSOURCE/ART/rtengine/procparams.cc:2227:12: error: expected primary-expression before ':' token
 2227 |     case IN: return std::round(ppi * width);
      |            ^
D:/ART/ARTSOURCE/ART/rtengine/procparams.cc: In member function 'int rtengine::procparams::ResizeParams::get_height() const':
D:/ART/ARTSOURCE/ART/rtengine/procparams.cc:2240:12: error: expected primary-expression before ':' token
 2240 |     case IN: return std::round(ppi * height);
      |            ^
D:/ART/ARTSOURCE/ART/rtengine/procparams.cc: In member function 'int rtengine::procparams::ProcParams::save(rtengine::ProgressListener*, bool, rtengine::procparams::KeyFile&, const ParamsEdited*, const Glib::ustring&) const':
D:/ART/ARTSOURCE/ART/rtengine/procparams.cc:3372:34: error: expected unqualified-id before ':' token
 3372 |             case ResizeParams::IN: u = "in"; break;
      |                                  ^
[ 27%] Building CXX object rtengine/CMakeFiles/rtengine.dir/rt_algo.cc.obj
D:/ART/ARTSOURCE/ART/rtengine/procparams.cc: In member function 'int rtengine::procparams::ProcParams::load(rtengine::ProgressListener*, bool, const rtengine::procparams::KeyFile&, const ParamsEdited*, bool, const Glib::ustring&)':
D:/ART/ARTSOURCE/ART/rtengine/procparams.cc:4396:51: error: expected unqualified-id before ';' token
 4396 |                     resize.unit = ResizeParams::IN;
      |  

And those new warnings

In file included from D:/programmes/exiv2source/install64/include/exiv2/config.h:98,
                 from D:/programmes/exiv2source/install64/include/exiv2/exiv2.hpp:32,
                 from D:/ART/ARTSOURCE/ART/rtengine/metadata.h:24,
                 from D:/ART/ARTSOURCE/ART/rtengine/imageio.h:38,
                 from D:/ART/ARTSOURCE/ART/rtengine/imagefloat.h:26,
                 from D:/ART/ARTSOURCE/ART/rtgui/edit.h:22,
                 from D:/ART/ARTSOURCE/ART/rtengine/pipettebuffer.h:22,
                 from D:/ART/ARTSOURCE/ART/rtengine/curves.h:35,
                 from D:/ART/ARTSOURCE/ART/rtengine/curves.cc:35:
C:/msys64/mingw64/x86_64-w64-mingw32/include/winsock2.h:15:2: warning: #warning Please include winsock2.h before windows.h [-Wcpp]
   15 | #warning Please include winsock2.h before windows.h

D:/ART/ARTSOURCE/ART/rtengine/dcraw.cc: In member function 'void DCraw::derror()':
D:/ART/ARTSOURCE/ART/rtengine/dcraw.cc:285:25: warning: 'I' flag used with '%x' gnu_printf format [-Wformat=]
  134 | #define _(String) (String)
      |                   ~~~~~~~~
......
  285 |       fprintf (stderr,_("Corrupt data near 0x%I64x\n"), (INT64) ftello(ifp));
D:/ART/ARTSOURCE/ART/rtengine/dcraw.cc:134:20: note: in definition of macro '_'
  134 | #define _(String) (String)
      |                    ^~~~~~
D:/ART/ARTSOURCE/ART/rtengine/dcraw.cc:285:25: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'DCraw::INT64' {aka 'long long int'} [-Wformat=]
  134 | #define _(String) (String)
      |                   ~~~~~~~~
......
  285 |       fprintf (stderr,_("Corrupt data near 0x%I64x\n"), (INT64) ftello(ifp));
D:/ART/ARTSOURCE/ART/rtengine/dcraw.cc:134:20: note: in definition of macro '_'
  134 | #define _(String) (String)

In file included from D:/programmes/exiv2source/install64/include/exiv2/config.h:98,
                 from D:/programmes/exiv2source/install64/include/exiv2/exiv2.hpp:32,
                 from D:/ART/ARTSOURCE/ART/rtengine/metadata.h:24,
                 from D:/ART/ARTSOURCE/ART/rtengine/imageio.h:38,
                 from D:/ART/ARTSOURCE/ART/rtengine/imagefloat.h:26,
                 from D:/ART/ARTSOURCE/ART/rtengine/lcp.h:31,
                 from D:/ART/ARTSOURCE/ART/rtengine/lcp.cc:30:
C:/msys64/mingw64/x86_64-w64-mingw32/include/winsock2.h:15:2: warning: #warning Please include winsock2.h before windows.h [-Wcpp]
   15 | #warning Please include winsock2.h before windows.h
      |  ^~~~~~~

Comments (4)

  1. Log in to comment