Re: PG compilation error with Visual Studio 2015/2017/2019

From: Juan José Santamaría Flecha <juanjo(dot)santamaria(at)gmail(dot)com>
To: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
Cc: Ranier Vilela <ranier(dot)vf(at)gmail(dot)com>, davinder singh <davindersingh2692(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: PG compilation error with Visual Studio 2015/2017/2019
Date: 2020-04-19 10:16:32
Message-ID: CAC+AXB0-qCyjt3e88e=gZS1HggECuoAO55KMaQvW+9UhaM1XYg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sat, Apr 18, 2020 at 6:07 AM Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> wrote:

> On Sat, Apr 18, 2020 at 12:14 AM Juan José Santamaría Flecha
> <juanjo(dot)santamaria(at)gmail(dot)com> wrote:
> >
> > We can get a match for those locales in non-ISO format by enumerating
> available locales with EnumSystemLocalesEx(), and trying to find a match.
>
> I have not reviewed or tested the new patch but one thing I would like
> to see is the impact of setting LC_MESAGGES with different locale
> information. Basically, the error messages after setting the locale
> with _create_locale and with the new method being discussed. This
> will help us in ensuring that we didn't break anything which was
> working with prior versions of MSVC. Can you or someone try to test
> and share the results of the same?
>

I cannot find a single place where all supported locales are listed, but I
have created a small test program (WindowsNLSLocales.c) based on:
<language>[_<location>] format locales [1], additional supported language
strings [2], and additional supported country and region strings [3]. Based
on the results from this test program, it is possible to to do a good job
with the <language>[_<location>] types using the proposed logic, but the
two later cases are Windows specific, and there is no way arround a
lookup-table.

The attached results (WindowsNLSLocales.ods) come from Windows 10 (1903)
and Visual C++ build 1924, 64-bit.

On Sat, Apr 18, 2020 at 1:43 PM Ranier Vilela <ranier(dot)vf(at)gmail(dot)com> wrote:

> I have some observations about this patch, related to style, if you will
> allow me.
>

Please find attached a revised version.

[1]
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c
[2] https://docs.microsoft.com/en-us/cpp/c-runtime-library/language-strings
<https://docs.microsoft.com/en-us/cpp/c-runtime-library/language-strings?view=vs-2019>
[3]
https://docs.microsoft.com/en-us/cpp/c-runtime-library/country-region-strings
<https://docs.microsoft.com/en-us/cpp/c-runtime-library/country-region-strings?view=vs-2019>

Attachment Content-Type Size
WindowsNLSLocales.c text/plain 5.9 KB
WindowsNLSLocales.ods application/vnd.oasis.opendocument.spreadsheet 18.3 KB
0001-PG-compilation-error-with-VS-2015-2017-2019_v07.patch application/octet-stream 5.5 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2020-04-19 10:29:30 Re: Poll: are people okay with function/operator table redesign?
Previous Message Pavel Stehule 2020-04-19 03:40:01 Re: Poll: are people okay with function/operator table redesign?