It seems like the MinGW-w64 headers provide a declaration for strlwr_l but
it doesn't really work.  On MSDN I do not see anything about that function,
but I do see the similarly named function _strlwr_l.

_strlwr_l is defined in libmsvcrt.a, but it is not mentioned in the
MinGW-w64 headers.  That seems like a bug that the maintainers would
probably accept a patch for.

If I provide an appropriate declaration for it, then I can use it in a
simple C program:

#include <string.h>
#include <stdio.h>
_SECIMP char *_strlwr_l(char *, _locale_t);
int main() {
  char buffer[64] = "Tom\0\0";
  _strlwr_l(buffer, 0);
  printf("%s\n", buffer);
}

I hope this helps!

--David


On Thu, Jan 21, 2021 at 11:22 AM Kacvinsky, Tom <tom.kacvin...@vector.com>
wrote:

> What library is strlwr_l supposed to come from?  I have a lew of link
> errors due to missing wide
> char functions, but I have not been able to figure out which library to
> use.  I am using the most
> up to date MSYS2 + the package for the GCC toolchain (GCC 10.2), with no
> modifications, but have had no joy.  This happens with the i686 and x86_^4
> flavors of MinGW-w64.
>
> Thanks,
>
> Tom
>
> _______________________________________________
> Mingw-w64-public mailing list
> Mingw-w64-public@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>

_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to