[cairo] [PATCH 04/51] core: fix compiler warnings
Bryce Harrington
bryce at osg.samsung.com
Tue Dec 22 14:14:20 PST 2015
On Fri, Dec 18, 2015 at 02:28:43PM +0100, Enrico Weigelt, metux IT consult wrote:
> The code correct, but the compiler can't check that and thinks
> there're uninitialized variables.
>
> Perhaps we could rewrite it in a better way, so the compiler
> can do better (even arch specific) optimizations.
>
> Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt at gr13.net>
I'd love to see these warnings squashed, they're quite annoying.
But this issue is orthogonal to the drm backend patchset. I seem to
recall there being some other backends with this same warning, so
probably better to debate this as its own separate patchset.
Bryce
> ---
> src/cairo-botor-scan-converter.c | 2 +-
> src/cairo-line.c | 8 ++++----
> src/cairo-polygon-intersect.c | 2 +-
> src/cairo-polygon-reduce.c | 2 +-
> 4 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/src/cairo-botor-scan-converter.c b/src/cairo-botor-scan-converter.c
> index e23aefe..64883a6 100644
> --- a/src/cairo-botor-scan-converter.c
> +++ b/src/cairo-botor-scan-converter.c
> @@ -456,7 +456,7 @@ edges_compare_x_for_y (const cairo_edge_t *a,
> HAVE_BX = 0x2,
> HAVE_BOTH = HAVE_AX | HAVE_BX
> } have_ax_bx = HAVE_BOTH;
> - int32_t ax, bx;
> + int32_t ax = 0, bx = 0;
>
> /* XXX given we have x and dx? */
>
> diff --git a/src/cairo-line.c b/src/cairo-line.c
> index cb13927..dc00a9c 100644
> --- a/src/cairo-line.c
> +++ b/src/cairo-line.c
> @@ -110,9 +110,9 @@ lines_compare_x_for_y_general (const cairo_line_t *a,
> * should prevent that before the tessellation algorithm
> * begins.
> */
> - int32_t dx;
> - int32_t adx, ady;
> - int32_t bdx, bdy;
> + int32_t dx = 0;
> + int32_t adx = 0, ady = 0;
> + int32_t bdx = 0, bdy = 0;
> enum {
> HAVE_NONE = 0x0,
> HAVE_DX = 0x1,
> @@ -218,7 +218,7 @@ lines_compare_x_for_y (const cairo_line_t *a,
> HAVE_BX = 0x2,
> HAVE_BOTH = HAVE_AX | HAVE_BX
> } have_ax_bx = HAVE_BOTH;
> - int32_t ax, bx;
> + int32_t ax = 0, bx = 0;
>
> if (y == a->p1.y)
> ax = a->p1.x;
> diff --git a/src/cairo-polygon-intersect.c b/src/cairo-polygon-intersect.c
> index 8cb8fb1..9c1777f 100644
> --- a/src/cairo-polygon-intersect.c
> +++ b/src/cairo-polygon-intersect.c
> @@ -447,7 +447,7 @@ edges_compare_x_for_y (const cairo_bo_edge_t *a,
> HAVE_BX = 0x2,
> HAVE_BOTH = HAVE_AX | HAVE_BX
> } have_ax_bx = HAVE_BOTH;
> - int32_t ax, bx;
> + int32_t ax = 0, bx = 0;
>
> if (y == a->edge.line.p1.y)
> ax = a->edge.line.p1.x;
> diff --git a/src/cairo-polygon-reduce.c b/src/cairo-polygon-reduce.c
> index ea457fe..da6c9ab 100644
> --- a/src/cairo-polygon-reduce.c
> +++ b/src/cairo-polygon-reduce.c
> @@ -445,7 +445,7 @@ edges_compare_x_for_y (const cairo_bo_edge_t *a,
> HAVE_BX = 0x2,
> HAVE_BOTH = HAVE_AX | HAVE_BX
> } have_ax_bx = HAVE_BOTH;
> - int32_t ax, bx;
> + int32_t ax = 0, bx = 0;
>
> if (y == a->edge.line.p1.y)
> ax = a->edge.line.p1.x;
> --
> 2.6.4.442.g545299f
>
> --
> cairo mailing list
> cairo at cairographics.org
> http://lists.cairographics.org/mailman/listinfo/cairo
More information about the cairo
mailing list