Re: glib-2.0 G_CONST_RETURN causing GCC "warning: const' on F31

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 25/09/2019 17:16, Stephan Bergmann wrote:
~ gcc $(pkg-config -cflags glib-2.0) -c test.c
test.c:2:13: warning: const
    2 | G_CONST_RETURN char * f();
      |             ^~~~~~~

emits a cryptic warning (and gets the positioning of the squiggly underline wrong).

On both F30 and F31, /usr/include/glib-2.0/glib/gmacros.h contains

/* Deprecated -- do not use. */
#ifndef G_DISABLE_DEPRECATED
#ifdef G_DISABLE_CONST_RETURNS
#define G_CONST_RETURN
#else
#define G_CONST_RETURN const
#endif
#endif

so I'm not sure what causes the warning to be emitted on F31 but not on F30.

So Clang gives it away:

test.c:2:1: warning: const [-W#pragma-messages]
G_CONST_RETURN char * f();
^
/usr/include/glib-2.0/glib/gmacros.h:913:30: note: expanded from macro 'G_CONST_RETURN'
#define G_CONST_RETURN const GLIB_DEPRECATED_MACRO_IN_2_30_FOR(const)
                             ^
/usr/include/glib-2.0/glib/gversionmacros.h:387:49: note: expanded from macro 'GLIB_DEPRECATED_MACRO_IN_2_30_FOR'
# define GLIB_DEPRECATED_MACRO_IN_2_30_FOR(f)   GLIB_DEPRECATED_MACRO_FOR(f)
                                                ^
/usr/include/glib-2.0/glib/gmacros.h:990:38: note: expanded from macro 'GLIB_DEPRECATED_MACRO_FOR'
#define GLIB_DEPRECATED_MACRO_FOR(f) _GLIB_GNUC_DO_PRAGMA(GCC warning #f)
                                     ^
/usr/include/glib-2.0/glib/gmacros.h:988:33: note: expanded from macro '_GLIB_GNUC_DO_PRAGMA'
#define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
                                ^
<scratch space>:110:6: note: expanded from here
 GCC warning "const"
     ^
1 warning generated.

(At least partly; /usr/include/glib-2.0/glib/gmacros.h has only 540 lines, there's no line 913; so whatever #line tricks get played there...)
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux