gator-daemon: Fix sequence-point compile error
authorJon Medhurst <tixy@linaro.org>
Mon, 14 May 2012 10:23:23 +0000 (11:23 +0100)
committerJon Medhurst <tixy@linaro.org>
Wed, 16 May 2012 13:23:09 +0000 (14:23 +0100)
In mxml/mxml-file.c in the expression:
  (getc(fp) << 8) | getc(fp)
the C standard allows right-hand getc() to be called before left hand
one, which would cause a bug.

The compiler gives an warning about this and we are treating warnings as
errors this breaks the build with:
  error: operation on 'fp->_r' may be undefined [-Werror=sequence-point]

We can fix this by rewriting the expressions in two parts, however the
code in question has licensing clauses for modified versions which have
not yet been resolved.

Therefore, for now, we will disable the problematic error in the
makefiles.

Signed-off-by: Jon Medhurst <tixy@linaro.org>
daemon/Android.mk
daemon/Makefile

index 3ab55b91ad555941b9bb646868a4facf4883560b..715e5b62ba1b37cf3b1473cb5e18845cd1422fa9 100755 (executable)
@@ -3,7 +3,7 @@ include $(CLEAR_VARS)
 \r
 $(shell cd $(LOCAL_PATH);cat events_header.xml events-*\.xml events_footer.xml > events.xml;xxd -i events.xml > events_xml.h;xxd -i configuration.xml > configuration_xml.h)\r
 \r
-LOCAL_CFLAGS +=  -Wall -O3 -ftree-vectorize\r
+LOCAL_CFLAGS +=  -Wall -O3 -ftree-vectorize -Wno-error=sequence-point\r
 \r
 LOCAL_SRC_FILES:= \\r
        CapturedXML.cpp \\r
index aa1c0056a8a5a03e4ab74bab363770434c540673..300c3e95695e1af670da04855647901868d27758 100644 (file)
@@ -18,7 +18,7 @@ GCC=$(CROSS_COMPILE)gcc
 # -std=c++98 is the 1998 c++ standard
 # -march=armv5t is required to set the minimum architecture
 # -mthumb-interwork is required for interworking to ARM or Thumb stdlibc
-CFLAGS=-O3 -Wall -Werror -march=armv5t -mthumb-interwork
+CFLAGS=-O3 -Wall -Werror -Wno-error=sequence-point -march=armv5t -mthumb-interwork
 TARGET=gatord
 C_SRC = $(wildcard mxml/*.c)
 CPP_SRC  = $(wildcard *.cpp)