<div dir="ltr">Dare I suggest getting rid of EQUAL?</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Apr 7, 2021 at 10:25 AM Andrew C Aitchison <<a href="mailto:andrew@aitchison.me.uk">andrew@aitchison.me.uk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
I have developed a gdal driver plugin on Linux and am now attempting to <br>
build it on Windows.<br>
I am using the conda gdal, WIN10 SDK and the mingw-m64 clang11 compiler<br>
(all installed this week, latest versions I believe), but am open to<br>
other suggestions for building a windows gdal driver plugin.<br>
<br>
I get a deprecation warning from cpl_port.h when I use the EQUALS macro:<br>
----------------------------------------------------------------------<br>
qed.cpp:569:31: warning: 'stricmp' is deprecated: The POSIX name for this <br>
item is deprecated. Instead, use the ISO C and<br>
        C++ conformant name: _stricmp. See online help for details. <br>
[-Wdeprecated-declarations]<br>
      if( magic == qed_magic && <br>
EQUAL(CPLGetExtension(poOpenInfo->pszFilename),"qed")) {<br>
                                ^<br>
C:\ProgramData\Miniconda3\Library\include/cpl_port.h:576:36: note: <br>
expanded from macro 'EQUAL'<br>
#  define EQUAL(a,b)              (STRCASECMP(a,b)==0)<br>
                                     ^<br>
C:\ProgramData\Miniconda3\Library\include/cpl_port.h:565:38: note: <br>
expanded from macro 'STRCASECMP'<br>
#    define STRCASECMP(a,b)         (stricmp(a,b))<br>
                                       ^<br>
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\string.h:544:20: note: 'stricmp' has <br>
been explicitly<br>
        marked deprecated here<br>
      _Check_return_ _CRT_NONSTDC_DEPRECATE(_stricmp)<br>
                     ^<br>
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt.h:414:50: note: expanded from <br>
macro<br>
        '_CRT_NONSTDC_DEPRECATE'<br>
          #define _CRT_NONSTDC_DEPRECATE(_NewName) _CRT_DEPRECATE_TEXT( <br>
\<br>
                                                   ^<br>
C:\Program Files (x86)\Microsoft Visual <br>
Studio\2019\Community\VC\Tools\MSVC\14.28.29910\include\vcruntime.h:310:47: <br>
note:<br>
        expanded from macro '_CRT_DEPRECATE_TEXT'<br>
#define _CRT_DEPRECATE_TEXT(_Text) __declspec(deprecated(_Text))<br>
                                                ^<br>
1 warning generated.<br>
-----------------------------------------------------------------------<br>
<br>
Should cpl_port be updated to use _stricmp or is there a better <br>
alternative (I wondered about strcasecmp but don't see it) ?<br>
<br>
I see that<br>
        frmts/mrsid_lidar/<a href="http://makefile.vc" rel="noreferrer" target="_blank">makefile.vc</a><br>
sets<br>
        EXTRAFLAGS = $(MRSID_INCLUDE) -D_CRT_SECURE_NO_WARNINGS /Zc:wchar_t-<br>
but I would rather not turn off warnings, since my code is clean enough to <br>
use  -Wall -Wextra -Weverything on linux.<br>
<br>
Thanks.<br>
<br>
-- <br>
Andrew C. Aitchison                                      Kendal, UK<br>
                        <a href="mailto:andrew@aitchison.me.uk" target="_blank">andrew@aitchison.me.uk</a><br>
_______________________________________________<br>
gdal-dev mailing list<br>
<a href="mailto:gdal-dev@lists.osgeo.org" target="_blank">gdal-dev@lists.osgeo.org</a><br>
<a href="https://lists.osgeo.org/mailman/listinfo/gdal-dev" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/gdal-dev</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature">Andrew Bell<br><a href="mailto:andrew.bell.ia@gmail.com" target="_blank">andrew.bell.ia@gmail.com</a></div>