Bug 104420

Summary: 1.14.12 does not compile
Product: cairo Reporter: Dilian <dpa-bugs>
Component: generalAssignee: Chris Wilson <chris>
Status: RESOLVED MOVED QA Contact: cairo-bugs mailing list <cairo-bugs>
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Dilian 2017-12-30 14:54:59 UTC
V 1.14.12 fails compiling with:

Makefile:1501: warning: overriding recipe for target 'recheck'
Makefile:1139: warning: ignoring old recipe for target 'recheck'
make  all-recursive
make[1]: Entering directory '/src/gnome/cairo-1.14.12'
Makefile:1501: warning: overriding recipe for target 'recheck'
Makefile:1139: warning: ignoring old recipe for target 'recheck'
Making all in src
make[2]: Entering directory '/src/gnome/cairo-1.14.12/src'
make  all-am
make[3]: Entering directory '/src/gnome/cairo-1.14.12/src'
  CC       cairo-drm-intel.lo
In file included from drm/cairo-drm-intel.c:34:0:
drm/cairo-drm-intel-private.h:174:5: error: unknown type name ‘cairo_pattern_union_t’
     cairo_pattern_union_t pattern;
     ^~~~~~~~~~~~~~~~~~~~~
drm/cairo-drm-intel-private.h:344:16: error: unknown type name ‘cairo_gradient_pattern_t’
          const cairo_gradient_pattern_t *pattern,
                ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./cairoint.h:73:0,
                 from drm/cairo-drm-intel.c:30:
drm/cairo-drm-intel.c: In function ‘intel_bo_get_image’:
drm/cairo-drm-intel.c:544:24: error: dereferencing pointer to incomplete type ‘cairo_image_surface_t {aka struct _cairo_image_surface}’
     if (unlikely (image->base.status))
                        ^
./cairo-compiler-private.h:187:46: note: in definition of macro ‘unlikely’
 #define unlikely(expr) (__builtin_expect (!!(expr), 0))
                                              ^~~~
drm/cairo-drm-intel.c: In function ‘_intel_gradient_cache_fini’:
drm/cairo-drm-intel.c:781:2: error: implicit declaration of function ‘_cairo_pattern_fini’ [-Werror=implicit-function-declaration]
  _cairo_pattern_fini (&device->gradient_cache.cache[n].pattern.base);
  ^~~~~~~~~~~~~~~~~~~
drm/cairo-drm-intel.c:781:63: error: request for member ‘base’ in something not a structure or union
  _cairo_pattern_fini (&device->gradient_cache.cache[n].pattern.base);
                                                               ^
drm/cairo-drm-intel.c: In function ‘intel_device_fini’:
drm/cairo-drm-intel.c:810:2: error: implicit declaration of function ‘_cairo_scaled_font_revoke_ownership’ [-Werror=implicit-function-declaration]
  _cairo_scaled_font_revoke_ownership (scaled_font);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drm/cairo-drm-intel.c: In function ‘intel_glyph_cache_add_glyph’:
drm/cairo-drm-intel.c:862:16: warning: comparison between ‘cairo_status_t {aka enum _cairo_status}’ and ‘enum _cairo_int_status’ [-Wenum-compare]
     if (status == CAIRO_INT_STATUS_UNSUPPORTED) {
                ^~
drm/cairo-drm-intel.c:937:17: error: ‘cairo_scaled_glyph_t {aka struct _cairo_scaled_glyph}’ has no member named ‘surface_private’; did you mean ‘dev_private’?
     scaled_glyph->surface_private = node;
                 ^~
drm/cairo-drm-intel.c:940:16: error: ‘cairo_rtree_node_t {aka struct _cairo_rtree_node}’ has no member named ‘owner’
     glyph->node.owner = &scaled_glyph->surface_private;
                ^
drm/cairo-drm-intel.c:940:38: error: ‘cairo_scaled_glyph_t {aka struct _cairo_scaled_glyph}’ has no member named ‘surface_private’; did you mean ‘dev_private’?
     glyph->node.owner = &scaled_glyph->surface_private;
                                      ^~
drm/cairo-drm-intel.c: In function ‘intel_scaled_glyph_fini’:
drm/cairo-drm-intel.c:968:25: error: ‘cairo_scaled_glyph_t {aka struct _cairo_scaled_glyph}’ has no member named ‘surface_private’; did you mean ‘dev_private’?
     glyph = scaled_glyph->surface_private;
                         ^~
drm/cairo-drm-intel.c:971:13: error: ‘cairo_rtree_node_t {aka struct _cairo_rtree_node}’ has no member named ‘owner’
  glyph->node.owner = NULL;
             ^
drm/cairo-drm-intel.c: In function ‘intel_get_glyph_cache’:
drm/cairo-drm-intel.c:991:5: warning: enumeration value ‘CAIRO_FORMAT_RGB30’ not handled in switch [-Wswitch-enum]
     switch (format) {
     ^~~~~~
drm/cairo-drm-intel.c:1016:2: error: too few arguments to function ‘_cairo_rtree_init’
  _cairo_rtree_init (&cache->rtree,
  ^~~~~~~~~~~~~~~~~
In file included from drm/cairo-drm-intel-private.h:40:0,
                 from drm/cairo-drm-intel.c:34:
./cairo-rtree-private.h:97:1: note: declared here
 _cairo_rtree_init (cairo_rtree_t *rtree,
 ^~~~~~~~~~~~~~~~~
In file included from ./cairoint.h:73:0,
                 from drm/cairo-drm-intel.c:30:
drm/cairo-drm-intel.c: In function ‘intel_get_glyph’:
drm/cairo-drm-intel.c:1071:26: warning: comparison between ‘cairo_status_t {aka enum _cairo_status}’ and ‘enum _cairo_int_status’ [-Wenum-compare]
     if (unlikely (status == CAIRO_INT_STATUS_UNSUPPORTED)) {
                          ^
./cairo-compiler-private.h:187:46: note: in definition of macro ‘unlikely’
 #define unlikely(expr) (__builtin_expect (!!(expr), 0))
                                              ^~~~
drm/cairo-drm-intel.c: In function ‘intel_buffer_cache_init’:
drm/cairo-drm-intel.c:1116:5: warning: enumeration value ‘CAIRO_FORMAT_RGB30’ not handled in switch [-Wswitch-enum]
     switch (format) {
     ^~~~~~
drm/cairo-drm-intel.c: At top level:
drm/cairo-drm-intel.c:1205:36: error: unknown type name ‘cairo_gradient_pattern_t’
 _gradient_color_stops_equal (const cairo_gradient_pattern_t *a,
                                    ^~~~~~~~~~~~~~~~~~~~~~~~
drm/cairo-drm-intel.c:1206:15: error: unknown type name ‘cairo_gradient_pattern_t’
         const cairo_gradient_pattern_t *b)
               ^~~~~~~~~~~~~~~~~~~~~~~~
drm/cairo-drm-intel.c: In function ‘_gradient_color_stops_equal’:
drm/cairo-drm-intel.c:1210:10: error: request for member ‘n_stops’ in something not a structure or union
     if (a->n_stops != b->n_stops)
          ^~
drm/cairo-drm-intel.c:1210:24: error: request for member ‘n_stops’ in something not a structure or union
     if (a->n_stops != b->n_stops)
                        ^~
drm/cairo-drm-intel.c:1213:22: error: request for member ‘n_stops’ in something not a structure or union
     for (n = 0; n < a->n_stops; n++) {
                      ^~
drm/cairo-drm-intel.c:1214:33: error: request for member ‘stops’ in something not a structure or union
  if (_cairo_fixed_from_double (a->stops[n].offset) !=
                                 ^~
drm/cairo-drm-intel.c:1215:33: error: request for member ‘stops’ in something not a structure or union
      _cairo_fixed_from_double (b->stops[n].offset))
                                 ^~
drm/cairo-drm-intel.c:1220:35: error: request for member ‘stops’ in something not a structure or union
  if (! _cairo_color_stop_equal (&a->stops[n].color, &b->stops[n].color))
                                   ^~
drm/cairo-drm-intel.c:1220:55: error: request for member ‘stops’ in something not a structure or union
  if (! _cairo_color_stop_equal (&a->stops[n].color, &b->stops[n].color))
                                                       ^~
drm/cairo-drm-intel.c: At top level:
drm/cairo-drm-intel.c:1237:36: error: unknown type name ‘cairo_gradient_pattern_t’
 intel_gradient_sample_width (const cairo_gradient_pattern_t *gradient)
                                    ^~~~~~~~~~~~~~~~~~~~~~~~
drm/cairo-drm-intel.c: In function ‘intel_gradient_sample_width’:
drm/cairo-drm-intel.c:1243:29: error: request for member ‘n_stops’ in something not a structure or union
     for (n = 1; n < gradient->n_stops; n++) {
                             ^~
drm/cairo-drm-intel.c:1244:22: error: request for member ‘stops’ in something not a structure or union
  double dx = gradient->stops[n].offset - gradient->stops[n-1].offset;
                      ^~
drm/cairo-drm-intel.c:1244:50: error: request for member ‘stops’ in something not a structure or union
  double dx = gradient->stops[n].offset - gradient->stops[n-1].offset;
                                                  ^~
drm/cairo-drm-intel.c:1251:16: error: request for member ‘stops’ in something not a structure or union
  max = gradient->stops[n].color.red -
                ^~
drm/cairo-drm-intel.c:1252:16: error: request for member ‘stops’ in something not a structure or union
        gradient->stops[n-1].color.red;
                ^~
drm/cairo-drm-intel.c:1254:18: error: request for member ‘stops’ in something not a structure or union
  delta = gradient->stops[n].color.green -
                  ^~
drm/cairo-drm-intel.c:1255:18: error: request for member ‘stops’ in something not a structure or union
          gradient->stops[n-1].color.green;
                  ^~
drm/cairo-drm-intel.c:1259:18: error: request for member ‘stops’ in something not a structure or union
  delta = gradient->stops[n].color.blue -
                  ^~
drm/cairo-drm-intel.c:1260:18: error: request for member ‘stops’ in something not a structure or union
          gradient->stops[n-1].color.blue;
                  ^~
drm/cairo-drm-intel.c:1264:18: error: request for member ‘stops’ in something not a structure or union
  delta = gradient->stops[n].color.alpha -
                  ^~
drm/cairo-drm-intel.c:1265:18: error: request for member ‘stops’ in something not a structure or union
          gradient->stops[n-1].color.alpha;
                  ^~
drm/cairo-drm-intel.c: At top level:
drm/cairo-drm-intel.c:1280:16: error: unknown type name ‘cairo_gradient_pattern_t’
          const cairo_gradient_pattern_t *pattern,
                ^~~~~~~~~~~~~~~~~~~~~~~~
drm/cairo-drm-intel.c: In function ‘intel_gradient_render’:
drm/cairo-drm-intel.c:1293:47: error: request for member ‘gradient’ in something not a structure or union
       &device->gradient_cache.cache[i].pattern.gradient.base)) {
                                               ^
In file included from ./cairoint.h:73:0,
                 from drm/cairo-drm-intel.c:30:
drm/cairo-drm-intel.c:1300:26: error: request for member ‘n_stops’ in something not a structure or union
     if (unlikely (pattern->n_stops > ARRAY_LENGTH (pixman_stops_stack))) {
                          ^
./cairo-compiler-private.h:187:46: note: in definition of macro ‘unlikely’
 #define unlikely(expr) (__builtin_expect (!!(expr), 0))
                                              ^~~~
In file included from ./cairoint.h:2044:0,
                 from drm/cairo-drm-intel.c:30:
drm/cairo-drm-intel.c:1301:42: error: request for member ‘n_stops’ in something not a structure or union
  pixman_stops = _cairo_malloc_ab (pattern->n_stops,
                                          ^
./cairo-malloc-private.h:83:26: note: in definition of macro ‘_cairo_malloc_ab’
   ((size) && (unsigned) (a) >= INT32_MAX / (unsigned) (size) ? NULL : \
                          ^
drm/cairo-drm-intel.c:1301:42: error: request for member ‘n_stops’ in something not a structure or union
  pixman_stops = _cairo_malloc_ab (pattern->n_stops,
                                          ^
./cairo-malloc-private.h:63:6: note: in definition of macro ‘_cairo_malloc’
    ((size) ? malloc((unsigned) (size)) : NULL)
      ^~~~
drm/cairo-drm-intel.c:1301:17: note: in expansion of macro ‘_cairo_malloc_ab’
  pixman_stops = _cairo_malloc_ab (pattern->n_stops,
                 ^~~~~~~~~~~~~~~~
drm/cairo-drm-intel.c:1301:42: error: request for member ‘n_stops’ in something not a structure or union
  pixman_stops = _cairo_malloc_ab (pattern->n_stops,
                                          ^
./cairo-malloc-private.h:63:33: note: in definition of macro ‘_cairo_malloc’
    ((size) ? malloc((unsigned) (size)) : NULL)
                                 ^~~~
drm/cairo-drm-intel.c:1301:17: note: in expansion of macro ‘_cairo_malloc_ab’
  pixman_stops = _cairo_malloc_ab (pattern->n_stops,
                 ^~~~~~~~~~~~~~~~
drm/cairo-drm-intel.c:1307:28: error: request for member ‘n_stops’ in something not a structure or union
     for (i = 0; i < pattern->n_stops; i++) {
                            ^~
drm/cairo-drm-intel.c:1308:61: error: request for member ‘stops’ in something not a structure or union
  pixman_stops[i].x = _cairo_fixed_16_16_from_double (pattern->stops[i].offset);
                                                             ^~
drm/cairo-drm-intel.c:1309:39: error: request for member ‘stops’ in something not a structure or union
  pixman_stops[i].color.red   = pattern->stops[i].color.red_short;
                                       ^~
drm/cairo-drm-intel.c:1310:39: error: request for member ‘stops’ in something not a structure or union
  pixman_stops[i].color.green = pattern->stops[i].color.green_short;
                                       ^~
drm/cairo-drm-intel.c:1311:39: error: request for member ‘stops’ in something not a structure or union
  pixman_stops[i].color.blue  = pattern->stops[i].color.blue_short;
                                       ^~
drm/cairo-drm-intel.c:1312:39: error: request for member ‘stops’ in something not a structure or union
  pixman_stops[i].color.alpha = pattern->stops[i].color.alpha_short;
                                       ^~
drm/cairo-drm-intel.c:1324:18: error: request for member ‘n_stops’ in something not a structure or union
           pattern->n_stops);
                  ^~
drm/cairo-drm-intel.c:1373:63: error: request for member ‘base’ in something not a structure or union
  _cairo_pattern_fini (&device->gradient_cache.cache[i].pattern.base);
                                                               ^
drm/cairo-drm-intel.c:1377:14: error: implicit declaration of function ‘_cairo_pattern_init_copy’ [-Werror=implicit-function-declaration]
     status = _cairo_pattern_init_copy (&device->gradient_cache.cache[i].pattern.base,
              ^~~~~~~~~~~~~~~~~~~~~~~~
drm/cairo-drm-intel.c:1377:80: error: request for member ‘base’ in something not a structure or union
     status = _cairo_pattern_init_copy (&device->gradient_cache.cache[i].pattern.base,
                                                                                ^
drm/cairo-drm-intel.c:1378:20: error: request for member ‘base’ in something not a structure or union
            &pattern->base);
                    ^~
drm/cairo-drm-intel.c:1382:2: error: implicit declaration of function ‘_cairo_pattern_init_solid’ [-Werror=implicit-function-declaration]
  _cairo_pattern_init_solid (&device->gradient_cache.cache[i].pattern.solid,
  ^~~~~~~~~~~~~~~~~~~~~~~~~
drm/cairo-drm-intel.c:1382:69: error: request for member ‘solid’ in something not a structure or union
  _cairo_pattern_init_solid (&device->gradient_cache.cache[i].pattern.solid,
                                                                     ^
drm/cairo-drm-intel.c: In function ‘intel_bo_get_image’:
drm/cairo-drm-intel.c:573:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
cc1: some warnings being treated as errors
make[3]: *** [Makefile:2433: cairo-drm-intel.lo] Error 1
make[3]: Leaving directory '/src/gnome/cairo-1.14.12/src'
make[2]: *** [Makefile:1951: all] Error 2
make[2]: Leaving directory '/src/gnome/cairo-1.14.12/src'
make[1]: *** [Makefile:909: all-recursive] Error 1
make[1]: Leaving directory '/src/gnome/cairo-1.14.12'
make: *** [Makefile:760: all] Error 2
Comment 1 GitLab Migration User 2018-08-25 13:37:48 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/cairo/cairo/issues/108.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.