lsb

uplifted glib.h ordering problem for LSB <5.0

Bug #1334781 reported by Jeff Johnson
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
lsb
Fix Committed
Medium
Unassigned
Mandriva
Fix Released
Medium

Bug Description

A build targeting LSB=4.1 set up this way:

export LSBCC_LSBVERSION=4.1

found problems building against the uplifted glib.h.

Lines 2416 and 2621 reported "field 'mutex' has incomplete type", both are
structure members declared as:

        GStaticMutex mutex;

This is apparently an ordering problem, at line 1879 we see:

#if __LSB_VERSION__ < 50
    typedef struct _GMutex GMutex;

    typedef struct _GStaticMutex GStaticMutex;

#endif /* __LSB_VERSION__ < 5.0 */

but the definition of _GStaticMutex does not come until line 2711:

#if __LSB_VERSION__ < 50
    struct _GStaticMutex {
        struct _GMutex *runtime_mutex;
        union {
            char pad[GLIB_LSB_PADDING_SIZE];
            double dummy_double;
            void *dummy_pointer;
            long int dummy_long;
        } static_mutex;
    };

#endif /* __LSB_VERSION__ < 5.0 */

that is, after the two uses that cause the compiler error messages. Manually
moving this definition up higher in the header clears the problem.

Tags: spec gtk3 uplift
Changed in mandriva:
importance: Unknown → Medium
status: Unknown → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related blueprints

Remote bug watches

Bug watches keep track of this bug in other bug trackers.