Bug 433046
| Summary: | contacts failed massrebuild attempt for GCC 4.3 | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Jesse Keating <jkeating> |
| Component: | contacts | Assignee: | Dave Cantrell <dcantrell> |
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | rawhide | CC: | dcantrell, jonstanley |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2008-03-03 17:10:54 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 433629 | ||
|
Description
Jesse Keating
2008-02-15 21:02:04 UTC
gcc -DHAVE_CONFIG_H -I. -I.. -DPKGDATADIR=\"/usr/share/contacts\" -DCONTACTS_LOCALE_DIR=\""/usr/share/locale"\" -DDATADIR=\""/usr/share"\" -Wall -export-dynamic -DORBIT2=1 -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/evolution-data-server-2.22 -I/usr/include/libbonobo-2.0 -I/usr/include/libgnome-2.0 -I/usr/include/orbit-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/libxml2 -I/usr/include/gconf/2 -I/usr/include/gconf/2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT contacts-ui.o -MD -MP -MF .deps/contacts-ui.Tpo -c -o contacts-ui.o contacts-ui.c contacts-utils.c:36: error: static declaration of 'e_util_unicode_get_utf8' follows non-static declaration contacts-utils.h:25: error: previous declaration of 'e_util_unicode_get_utf8' was here contacts-utils.c: In function 'contacts_choose_photo': contacts-utils.c:601: warning: assignment from incompatible pointer typegcc -DHAVE_CONFIG_H -I. -I.. -DPKGDATADIR=\"/usr/share/contacts\" -DCONTACTS_LOCALE_DIR=\""/usr/share/locale"\" -DDATADIR=\""/usr/share"\" -Wall -export-dynamic -DORBIT2=1 -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/evolution-data-server-2.22 -I/usr/include/libbonobo-2.0 -I/usr/include/libgnome-2.0 -I/usr/include/orbit-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/libxml2 -I/usr/include/gconf/2 -I/usr/include/gconf/2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT contacts-ui.o -MD -MP -MF .deps/contacts-ui.Tpo -c -o contacts-ui.o contacts-ui.c contacts-utils.c:36: error: static declaration of 'e_util_unicode_get_utf8' follows non-static declaration contacts-utils.h:25: error: previous declaration of 'e_util_unicode_get_utf8' was here contacts-utils.c: In function 'contacts_choose_photo': contacts-utils.c:601: warning: assignment from incompatible pointer type hmm, that don't look too pretty. Any suggestions on how to extract the errors in a way that's useful? Maybe not include the gcc invocation that caused the(though it could be important I guess)? Errors have error: prefixes in the diagnostic. The code has probably something
like:
extern type e_util_unicode_get_utf8 (arguments);
or
type e_util_unicode_get_utf8 (arguments);
in the header, and
static type e_util_unicode_get_utf8 (arguments)
{
body;
}
definition in the body. This is invalid C, the prototype must use static
keyword if the definition is static (though, it is questionable why to provide
prototypes for static functions in a header, rather than in the .c file itself,
as other CUs can't access it anyway).
So the header has:
char *e_util_unicode_get_utf8 (const char *text, gunichar * out);
and the c file has:
G_INLINE_FUNC char *
e_util_unicode_get_utf8 (const char *text, gunichar * out)
{
*out = g_utf8_get_char (text);
return (G_UNLIKELY (*out == (gunichar) - 1)) ? NULL :
g_utf8_next_char (text);
}
Doesn't look like to me it matches either of the scenarios above, but my C is
not very good at all. Jakub can you take a look and clue me in? (:
Turned out to be a bug in glib2, which has since been fixed. Rebuild now succeeds. |