Looks like we could simply add:

#define U_DEFINE_FALSE_AND_TRUE 1

Before including the ICU headers. Or, I guess, use the actually values (0
or 1). Since we use ICU only intervally and do not have an issue with
redefined TRUE and FALSE, then the above define would be sufficient.

Stefan

On Mon, Dec 21, 2020, 05:57 Frederik Seiffert <frede...@algoriddim.com>
wrote:

> ICU release 68 changed their usage of primitive types, and removed the
> TRUE and FALSE defines as outlined here:
>
> https://github.com/unicode-org/icu/blob/master/docs/userguide/dev/codingguidelines.md#primitive-types
>
> You’ll probably need to patch Gui in some way. For Base I simply defined
> TRUE/FALSE in GSICUString.h:
> https://github.com/gnustep/libs-base/pull/163
>
> Frederik
>
>
> > Am 21.12.2020 um 11:00 schrieb Riccardo Mottola <
> riccardo.mott...@libero.it>:
> >
> > Hi all!
> >
> > gui stopped compiling for me on  Linux/Gentoo.
> > I guess it comes from Unicode issues:
> >
> >  Compiling file GSCharacterPanel.m ...
> > GSCharacterPanel.m: In function 'enumCharNamesFn':
> > GSCharacterPanel.m:81:10: error: 'TRUE' undeclared (first use in this
> > function)
> >    81 |   return TRUE;
> >       |          ^~~~
> > GSCharacterPanel.m:81:10: note: each undeclared identifier is reported
> > only once for each function it appears in
> > GSCharacterPanel.m: In function 'searchCharNamesFn':
> > GSCharacterPanel.m:106:10: error: 'TRUE' undeclared (first use in this
> > function)
> >   106 |   return TRUE;
> >       |          ^~~~
> >
> >
> >
> > I don't see any significant change in the code though, so my fear is
> > that it comes from a new version of libicu?
> > I cheched and I have 68.1 installed.
> >
> > What version(s) do you have? does gui still correctly build?
> >
> > Riccardo
> >
>
>
>

Reply via email to