Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Jul 2023 01:26:49 +0100
From:      Nuno Teixeira <eduardo@freebsd.org>
To:        Charlie Li <vishwin@freebsd.org>
Cc:        Dimitry Andric <dim@freebsd.org>, Danilo Egea Gondolfo <danilo@freebsd.org>,  FreeBSD Ports <ports@freebsd.org>
Subject:   Re: glib2 deprecated declarations failing on clang16
Message-ID:  <CAFDf7UKExfRx3otBxwWbEoYVVKkjLKVfjSGaFYFgvSoOu=NOWg@mail.gmail.com>
In-Reply-To: <a8092c85-c9f1-8668-f843-fd2e74c4048b@freebsd.org>
References:  <CAFDf7U%2B-M1D7xL_AkB-eY%2B0jq2JjjdhzoZUZtnmanVoa25vOtQ@mail.gmail.com> <BBD89BC1-8E9D-4E6D-887E-4A785F4A21D4@FreeBSD.org> <ffcb1751-dc86-b241-d7aa-f54896851697@FreeBSD.org> <CAFDf7ULBM1pV_X6OeRKbEggfyGcd0j-LuF720usWtM8KaG%2BJFA@mail.gmail.com> <22F61A7B-3566-4761-8D7A-DC78B9CF20E6@FreeBSD.org> <CAFDf7UJmiM8Lk4Ua--h2YY6WCwsNgXDHnPJrv4YaJCyGqj3fAw@mail.gmail.com> <CAFDf7ULvS9cQZ4Exzpn5j3hohU03SWjenLHG_XcRCN=pN0RfXQ@mail.gmail.com> <a8092c85-c9f1-8668-f843-fd2e74c4048b@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
--00000000000049858905ffb275c0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hello all,

Ticket opened at upstream: https://sourceforge.net/p/bluefish/tickets/75/

https://cgit.freebsd.org/ports/commit/?id=3De95c4bea425b3e3c49b63e0cf4eff24=
af40c574b

Thank you!

Charlie Li <vishwin@freebsd.org> escreveu no dia ter=C3=A7a, 4/07/2023 =C3=
=A0(s)
18:33:

> Nuno Teixeira wrote:
> > (...)
> >
> > Should this be applied upstream?
> > I could open a upstream PR about it.
> >
> After looking through some history on the glib side (which have been
> fixing incompatible function pointer conditions as they appear),
> G_CALLBACK() should be applied to bluefish. Upstreaming is a good idea.
> > Nuno Teixeira <eduardo@freebsd.org <mailto:eduardo@freebsd.org>>
> > escreveu no dia ter=C3=A7a, 4/07/2023 =C3=A0(s) 15:42:
> >
> >     And run test sucess at main-n263935-e8423423737e
> >
> >     I will do more testport builds with gtk2 and gtk3.
> >
> >     I will use something like in commit msg:
> >     ---
> >     Fix build with clang16
> >     Use G_CALLBACK() macro to silence incompatible function pointer
> >     warnings and
> >     disables any argument checks.
> >
> >     Reported by: dim
> >     ---
> >
> >     Cheers,
> >
> >     Dimitry Andric <dim@freebsd.org <mailto:dim@freebsd.org>> escreveu
> >     no dia ter=C3=A7a, 4/07/2023 =C3=A0(s) 15:31:
> >
> >         I got to exactly the same patches. This is due to how glib's
> >         gclosure.h
> >         header declares its callback function type as '(void)', even
> >         though in
> >         reality the number and type of the arguments varies:
> >
> >            /**
> >             * GCallback:
> >             *
> >             * The type used for callback functions in structure
> >         definitions and function
> >             * signatures.
> >             *
> >             * This doesn't mean that all callback functions must take
> >         no  parameters and
> >             * return void. The required signature of a callback functio=
n
> >         is determined by
> >
> >                * the context in which is used (e.g. the signal to which
> >         it is connected).
> >             *
> >             * Use G_CALLBACK() to cast the callback function to a
> >         #GCallback.
> >             */
> >            typedef void  (*GCallback)              (void);
> >
> >         It would have been better if glib had just used '(...)', but th=
e
> >         solution they have chosen requires each callback function to be
> cast
> >         using the G_CALLBACK() macro.
> >
> >         That basically shuts up any incompatible function pointer
> >         warnings, and
> >         disables any argument checks.
> >
> >         -Dimitry
> >
> >          > On 4 Jul 2023, at 16:21, Nuno Teixeira <eduardo@freebsd.org
> >         <mailto:eduardo@freebsd.org>> wrote:
> >          >
> >          > Hello Danilo!
> >          >
> >          > Yes, it builds ok.
> >          >
> >          > I will do a run test tomorrow on bluefish.
> >          >
> >          > Any hint on how to explain it in commit:
> >          >
> >          > ---
> >          > --- src/bftextview2_autocomp.c.orig     2023-07-04 14:09:37
> UTC
> >          > +++ src/bftextview2_autocomp.c
> >          > @@ -429,7 +429,7 @@ acwin_create(BluefishTextView * btv)
> >          >         /*gtk_widget_set_size_request(acw->reflabel,150,-1);
> */
> >          >         gtk_widget_show_all(acw->scroll);
> >          >         gtk_widget_show(hbox);
> >          > -       g_signal_connect(acw->reflabel, "activate-link",
> >         acw_label_active_link_lcb, acw);
> >          > +       g_signal_connect(acw->reflabel, "activate-link",
> >         G_CALLBACK(acw_label_active_link_lcb), acw);
> >          >
> >           /*gtk_widget_set_size_request(GTK_WIDGET(acw->tree),100,200);
> */
> >          >         /*gtk_widget_set_size_request(acw->win, 150, 200); *=
/
> >          >
> >
>  /*g_signal_connect(G_OBJECT(acw->win),"key-release-event",G_CALLBACK(acw=
in_key_release_lcb),acw);
> */
> >          > ---
> >          > and
> >          > ---
> >          > --- src/external_commands.c.orig        2023-07-04 14:12:18
> UTC
> >          > +++ src/external_commands.c
> >          > @@ -483,7 +483,7 @@ create_commandstring(Texternalp * ep,
> >         const gchar * fo
> >          >
> >
>  gtk_dialog_set_default_response(GTK_DIALOG(dialog),GTK_RESPONSE_ACCEPT);
> >          >                 tmp =3D g_strdup_printf(_("Supply arguments =
to
> >         define %%a in '%s'"), formatstring);
> >          >                 entry =3D dialog_entry_labeled(NULL, tmp,
> >         gtk_dialog_get_content_area(GTK_DIALOG(dialog)), 6);
> >          > -               g_signal_connect(G_OBJECT(entry), "activate"=
,
> >         command_dialog_entry_activated_lcb, dialog);
> >          > +               g_signal_connect(G_OBJECT(entry), "activate"=
,
> >         G_CALLBACK(command_dialog_entry_activated_lcb), dialog);
> >          >                 g_free(tmp);
> >          >                 gtk_widget_show_all(dialog);
> >          >                 result =3D gtk_dialog_run(GTK_DIALOG(dialog)=
);
> >          > ---
> >          >
> >          > Thanks!
> >          >
> >          > Danilo Egea Gondolfo <danilo@freebsd.org
> >         <mailto:danilo@freebsd.org>> escreveu no dia ter=C3=A7a, 4/07/2=
023
> >         =C3=A0(s) 15:00:
> >          > On 04/07/2023 14:56, Dimitry Andric wrote:
> >          >
> >          > > On 4 Jul 2023, at 14:37, Nuno Teixeira <eduardo@freebsd.or=
g
> >         <mailto:eduardo@freebsd.org>> wrote:
> >          > >> I'm getting build errors from current with www/bluefish
> >         about deprecated glib2 declarations and causing build to fail
> >         with clang16:
> >          > >> ---
> >          > >> /usr/local/include/glib-2.0/glib/gmacros.h:1262:37: note:
> >         expanded from macro 'G_DEPRECATED'
> >          > >> #define G_DEPRECATED __attribute__((__deprecated__))
> >          > >>                                      ^
> >          > >> mv -f .deps/bluefish.Tpo .deps/bluefish.Po
> >          > >> bftextview2_langmgr.c:2665:2: warning:
> >         'g_thread_create_full' is deprecated: Use 'g_thread_new' instea=
d
> >         [-Wdeprecated-declarations]
> >          > >>          g_thread_create_full(build_bflang2scan_thread,
> >         NULL, 0, FALSE, FALSE, G_THREAD_PRIORITY_LOW, &gerror);
> >          > >> ---
> >          > >>
> >          > >> Any help is welcome on finding out its cause.
> >          > >>
> >          > >> a related issue:
> >         https://github.com/PCSX2/pcsx2/issues/3315
> >         <https://github.com/PCSX2/pcsx2/issues/3315>;
> >          > >>
> >          > >> Build log:
> >
> https://pkg-status.freebsd.org/beefy17/data/main-i386-default/pf46bd2c584=
25_s0631830a7a/logs/bluefish-2.2.14.log
> <
> https://pkg-status.freebsd.org/beefy17/data/main-i386-default/pf46bd2c584=
25_s0631830a7a/logs/bluefish-2.2.14.log
> >
> >          > > The actual error is an incompatible callback function
> >         signature:
> >          > >
> >          > > bftextview2_autocomp.c:432:2: error: incompatible function
> >         pointer types passing 'gboolean (GtkLabel *, gchar *, gpointer)=
'
> >         (aka 'int (struct _GtkLabel *, char *, void *)') to parameter o=
f
> >         type 'GCallback' (aka 'void (*)(void)')
> >         [-Wincompatible-function-pointer-types]
> >          > > g_signal_connect(acw->reflabel, "activate-link",
> >         acw_label_active_link_lcb, acw);
> >          > >
> >
>  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=
~~~~~~~~
> >          > > /usr/local/include/glib-2.0/gobject/gsignal.h:515:59: note=
:
> >         expanded from macro 'g_signal_connect'
> >          > > g_signal_connect_data ((instance), (detailed_signal),
> >         (c_handler), (data), NULL, (GConnectFlags) 0)
> >          > > ^~~~~~~~~~~
> >          > > /usr/local/include/glib-2.0/gobject/gsignal.h:411:25: note=
:
> >         passing argument to parameter 'c_handler' here
> >          > > GCallback c_handler,
> >          > > ^
> >          > >
> >          > > I have seen these more often with glib-based applications.
> >         In some cases
> >          > > it is feasible to fix the callback function to have the
> correct
> >          > > signature, in other cases you can slap a cast in place. Or=
,
> >         if the
> >          > > affected code is vala-generated (also happens), the big
> >         hammer is to
> >          > > suppress the warning(s).
> >          > >
> >          > > -Dimitry
> >          > >
> >          > Not a glib expert here, but you can try this
> >         https://pastebin.com/ty8hLjVU <https://pastebin.com/ty8hLjVU>;
> >          >
> >          >
> >          >
> >          > --
> >          > Nuno Teixeira
> >          > FreeBSD Committer (ports)
> >
> >
> >
> >     --
> >     Nuno Teixeira
> >     FreeBSD Committer (ports)
> >
> >
> >
> > --
> > Nuno Teixeira
> > FreeBSD Committer (ports)
>
> --
> Charlie Li
> =E2=80=A6nope, still don't have an exit line.
>
>

--=20
Nuno Teixeira
FreeBSD Committer (ports)

--00000000000049858905ffb275c0
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hello all,</div><div><br></div><div>Ticket opened at =
upstream: <a href=3D"https://sourceforge.net/p/bluefish/tickets/75/">https:=
//sourceforge.net/p/bluefish/tickets/75/</a></div><div><br></div><div><a hr=
ef=3D"https://cgit.freebsd.org/ports/commit/?id=3De95c4bea425b3e3c49b63e0cf=
4eff24af40c574b">https://cgit.freebsd.org/ports/commit/?id=3De95c4bea425b3e=
3c49b63e0cf4eff24af40c574b</a></div><div><br></div><div>Thank you!<br></div=
></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr"=
>Charlie Li &lt;<a href=3D"mailto:vishwin@freebsd.org">vishwin@freebsd.org<=
/a>&gt; escreveu no dia ter=C3=A7a, 4/07/2023 =C3=A0(s) 18:33:<br></div><bl=
ockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-lef=
t:1px solid rgb(204,204,204);padding-left:1ex">Nuno Teixeira wrote:<br>
&gt; (...)<br>
&gt; <br>
&gt; Should this be applied upstream?<br>
&gt; I could open a upstream PR about it.<br>
&gt; <br>
After looking through some history on the glib side (which have been <br>
fixing incompatible function pointer conditions as they appear), <br>
G_CALLBACK() should be applied to bluefish. Upstreaming is a good idea.<br>
&gt; Nuno Teixeira &lt;<a href=3D"mailto:eduardo@freebsd.org" target=3D"_bl=
ank">eduardo@freebsd.org</a> &lt;mailto:<a href=3D"mailto:eduardo@freebsd.o=
rg" target=3D"_blank">eduardo@freebsd.org</a>&gt;&gt; <br>
&gt; escreveu no dia ter=C3=A7a, 4/07/2023 =C3=A0(s) 15:42:<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0And run test sucess at main-n263935-e8423423737e<br=
>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0I will do more testport builds with gtk2 and gtk3.<=
br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0I will use something like in commit msg:<br>
&gt;=C2=A0 =C2=A0 =C2=A0---<br>
&gt;=C2=A0 =C2=A0 =C2=A0Fix build with clang16<br>
&gt;=C2=A0 =C2=A0 =C2=A0Use G_CALLBACK() macro to silence incompatible func=
tion pointer<br>
&gt;=C2=A0 =C2=A0 =C2=A0warnings and<br>
&gt;=C2=A0 =C2=A0 =C2=A0disables any argument checks.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Reported by: dim<br>
&gt;=C2=A0 =C2=A0 =C2=A0---<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Cheers,<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Dimitry Andric &lt;<a href=3D"mailto:dim@freebsd.or=
g" target=3D"_blank">dim@freebsd.org</a> &lt;mailto:<a href=3D"mailto:dim@f=
reebsd.org" target=3D"_blank">dim@freebsd.org</a>&gt;&gt; escreveu<br>
&gt;=C2=A0 =C2=A0 =C2=A0no dia ter=C3=A7a, 4/07/2023 =C3=A0(s) 15:31:<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0I got to exactly the same patches. Th=
is is due to how glib&#39;s<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0gclosure.h<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0header declares its callback function=
 type as &#39;(void)&#39;, even<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0though in<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0reality the number and type of the ar=
guments varies:<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 /**<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0* GCallback:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0*<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0* The type used for cal=
lback functions in structure<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0definitions and function<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0* signatures.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0*<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0* This doesn&#39;t mean=
 that all callback functions must take<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0no=C2=A0 parameters and<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0* return void. The requ=
ired signature of a callback function<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0is determined by=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0<b=
r>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 * the context i=
n which is used (e.g. the signal to which<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0it is connected).<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0*<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0* Use G_CALLBACK() to c=
ast the callback function to a<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0#GCallback.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0*/<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 typedef void=C2=A0 (*GCallbac=
k)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (void);<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0It would have been better if glib had=
 just used &#39;(...)&#39;, but the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0solution they have chosen requires ea=
ch callback function to be cast<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0using the G_CALLBACK() macro.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0That basically shuts up any incompati=
ble function pointer<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0warnings, and<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0disables any argument checks.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-Dimitry<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; On 4 Jul 2023, at 16:21, Nuno T=
eixeira &lt;<a href=3D"mailto:eduardo@freebsd.org" target=3D"_blank">eduard=
o@freebsd.org</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:eduardo@=
freebsd.org" target=3D"_blank">eduardo@freebsd.org</a>&gt;&gt; wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; Hello Danilo!<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; Yes, it builds ok.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; I will do a run test tomorrow o=
n bluefish.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; Any hint on how to explain it i=
n commit:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; ---<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; --- src/bftextview2_autocomp.c.=
orig=C2=A0 =C2=A0 =C2=A02023-07-04 14:09:37 UTC<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; +++ src/bftextview2_autocomp.c<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; @@ -429,7 +429,7 @@ acwin_creat=
e(BluefishTextView * btv)<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0/*gtk_widget_set_size_request(acw-&gt;reflabel,150,-1); */<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0gtk_widget_show_all(acw-&gt;scroll);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0gtk_widget_show(hbox);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0g_s=
ignal_connect(acw-&gt;reflabel, &quot;activate-link&quot;,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0acw_label_active_link_lcb, acw);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; +=C2=A0 =C2=A0 =C2=A0 =C2=A0g_s=
ignal_connect(acw-&gt;reflabel, &quot;activate-link&quot;,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0G_CALLBACK(acw_label_active_link_lcb)=
, acw);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/*gtk_widget_set_size_request(=
GTK_WIDGET(acw-&gt;tree),100,200); */<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0/*gtk_widget_set_size_request(acw-&gt;win, 150, 200); */<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/*g_signal_connect(G_OBJECT(ac=
w-&gt;win),&quot;key-release-event&quot;,G_CALLBACK(acwin_key_release_lcb),=
acw); */<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; ---<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; and<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; ---<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; --- src/external_commands.c.ori=
g=C2=A0 =C2=A0 =C2=A0 =C2=A0 2023-07-04 14:12:18 UTC<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; +++ src/external_commands.c<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; @@ -483,7 +483,7 @@ create_comm=
andstring(Texternalp * ep,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0const gchar * fo<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0gtk_dialog_set_default_respons=
e(GTK_DIALOG(dialog),GTK_RESPONSE_ACCEPT);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0tmp =3D g_strdup_printf(_(&quot;Supply argum=
ents to<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0define %%a in &#39;%s&#39;&quot;), fo=
rmatstring);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0entry =3D dialog_entry_labeled(NULL, tmp,<br=
>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0gtk_dialog_get_content_area(GTK_DIALO=
G(dialog)), 6);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0g_signal_connect(G_OBJECT(entry), &quot;activate=
&quot;,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0command_dialog_entry_activated_lcb, d=
ialog);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0g_signal_connect(G_OBJECT(entry), &quot;activate=
&quot;,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0G_CALLBACK(command_dialog_entry_activ=
ated_lcb), dialog);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0g_free(tmp);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0gtk_widget_show_all(dialog);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0result =3D gtk_dialog_run(GTK_DIALOG(dialog)=
);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; ---<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; Thanks!<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; Danilo Egea Gondolfo &lt;<a hre=
f=3D"mailto:danilo@freebsd.org" target=3D"_blank">danilo@freebsd.org</a><br=
>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:danilo@f=
reebsd.org" target=3D"_blank">danilo@freebsd.org</a>&gt;&gt; escreveu no di=
a ter=C3=A7a, 4/07/2023<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=C3=A0(s) 15:00:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; On 04/07/2023 14:56, Dimitry An=
dric wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; On 4 Jul 2023, at 14:37, N=
uno Teixeira &lt;<a href=3D"mailto:eduardo@freebsd.org" target=3D"_blank">e=
duardo@freebsd.org</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:eduardo@=
freebsd.org" target=3D"_blank">eduardo@freebsd.org</a>&gt;&gt; wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt; I&#39;m getting build =
errors from current with www/bluefish<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0about deprecated glib2 declarations a=
nd causing build to fail<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0with clang16:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt; ---<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt; /usr/local/include/gli=
b-2.0/glib/gmacros.h:1262:37: note:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0expanded from macro &#39;G_DEPRECATED=
&#39;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt; #define G_DEPRECATED _=
_attribute__((__deprecated__))<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt;=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ^<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt; mv -f .deps/bluefish.T=
po .deps/bluefish.Po<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt; bftextview2_langmgr.c:=
2665:2: warning:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&#39;g_thread_create_full&#39; is dep=
recated: Use &#39;g_thread_new&#39; instead<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[-Wdeprecated-declarations]<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt;=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 g_thread_create_full(build_bflang2scan_thread,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0NULL, 0, FALSE, FALSE, G_THREAD_PRIOR=
ITY_LOW, &amp;gerror);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt; ---<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt; Any help is welcome on=
 finding out its cause.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt; a related issue:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0<a href=3D"https://github.com/PCSX2/p=
csx2/issues/3315" rel=3D"noreferrer" target=3D"_blank">https://github.com/P=
CSX2/pcsx2/issues/3315</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://github.com/PCS=
X2/pcsx2/issues/3315" rel=3D"noreferrer" target=3D"_blank">https://github.c=
om/PCSX2/pcsx2/issues/3315</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;&gt; Build log:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0<a href=3D"https://pkg-status.freebsd=
.org/beefy17/data/main-i386-default/pf46bd2c58425_s0631830a7a/logs/bluefish=
-2.2.14.log" rel=3D"noreferrer" target=3D"_blank">https://pkg-status.freebs=
d.org/beefy17/data/main-i386-default/pf46bd2c58425_s0631830a7a/logs/bluefis=
h-2.2.14.log</a> &lt;<a href=3D"https://pkg-status.freebsd.org/beefy17/data=
/main-i386-default/pf46bd2c58425_s0631830a7a/logs/bluefish-2.2.14.log" rel=
=3D"noreferrer" target=3D"_blank">https://pkg-status.freebsd.org/beefy17/da=
ta/main-i386-default/pf46bd2c58425_s0631830a7a/logs/bluefish-2.2.14.log</a>=
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; The actual error is an inc=
ompatible callback function<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0signature:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; bftextview2_autocomp.c:432=
:2: error: incompatible function<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0pointer types passing &#39;gboolean (=
GtkLabel *, gchar *, gpointer)&#39;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(aka &#39;int (struct _GtkLabel *, ch=
ar *, void *)&#39;) to parameter of<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0type &#39;GCallback&#39; (aka &#39;vo=
id (*)(void)&#39;)<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[-Wincompatible-function-pointer-type=
s]<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; g_signal_connect(acw-&gt;r=
eflabel, &quot;activate-link&quot;,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0acw_label_active_link_lcb, acw);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; /usr/local/include/glib-2.=
0/gobject/gsignal.h:515:59: note:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0expanded from macro &#39;g_signal_con=
nect&#39;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; g_signal_connect_data ((in=
stance), (detailed_signal),<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(c_handler), (data), NULL, (GConnectF=
lags) 0)<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; ^~~~~~~~~~~<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; /usr/local/include/glib-2.=
0/gobject/gsignal.h:411:25: note:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0passing argument to parameter &#39;c_=
handler&#39; here<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; GCallback c_handler,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; ^<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; I have seen these more oft=
en with glib-based applications.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0In some cases<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; it is feasible to fix the =
callback function to have the correct<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; signature, in other cases =
you can slap a cast in place. Or,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0if the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; affected code is vala-gene=
rated (also happens), the big<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0hammer is to<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; suppress the warning(s).<b=
r>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt; -Dimitry<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; Not a glib expert here, but you=
 can try this<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0<a href=3D"https://pastebin.com/ty8hL=
jVU" rel=3D"noreferrer" target=3D"_blank">https://pastebin.com/ty8hLjVU</a>=
 &lt;<a href=3D"https://pastebin.com/ty8hLjVU" rel=3D"noreferrer" target=3D=
"_blank">https://pastebin.com/ty8hLjVU</a>&gt;<br>;
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; --<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; Nuno Teixeira<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; FreeBSD Committer (ports)<br>
&gt; <br>
&gt; <br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0-- <br>
&gt;=C2=A0 =C2=A0 =C2=A0Nuno Teixeira<br>
&gt;=C2=A0 =C2=A0 =C2=A0FreeBSD Committer (ports)<br>
&gt; <br>
&gt; <br>
&gt; <br>
&gt; -- <br>
&gt; Nuno Teixeira<br>
&gt; FreeBSD Committer (ports)<br>
<br>
-- <br>
Charlie Li<br>
=E2=80=A6nope, still don&#39;t have an exit line.<br>
<br>
</blockquote></div><br clear=3D"all"><br><span class=3D"gmail_signature_pre=
fix">-- </span><br><div dir=3D"ltr" class=3D"gmail_signature"><div dir=3D"l=
tr"><span style=3D"color:rgb(102,102,102)">Nuno Teixeira<br>FreeBSD Committ=
er (ports)</span></div></div>

--00000000000049858905ffb275c0--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFDf7UKExfRx3otBxwWbEoYVVKkjLKVfjSGaFYFgvSoOu=NOWg>