summaryrefslogtreecommitdiff
path: root/include/acpi/platform/acgcc.h
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2014-04-04 12:37:19 +0800
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2014-04-20 22:59:37 +0200
commit7ed823264845f7c2f14d3278405e593ddfdc50f6 (patch)
treeb587bc9dc38c2d0b152eb585e5abd9158836959b /include/acpi/platform/acgcc.h
parent6085bb18afa431823a6287a0aa4d13641acb658d (diff)
ACPICA: gcc-specific: Fix possible issue with the strchr function.
Some versions of gcc implement strchr via a macro, which either contains bugs or can provoke a bug in the compiler. This change fixes a possible compile-time error when using this function. The problem is usually seen when compiling the getopt.c module. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'include/acpi/platform/acgcc.h')
-rw-r--r--include/acpi/platform/acgcc.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/acpi/platform/acgcc.h b/include/acpi/platform/acgcc.h
index a476b9118b49..384875da3713 100644
--- a/include/acpi/platform/acgcc.h
+++ b/include/acpi/platform/acgcc.h
@@ -64,4 +64,15 @@
*/
#define ACPI_UNUSED_VAR __attribute__ ((unused))
+/*
+ * Some versions of gcc implement strchr() with a buggy macro. So,
+ * undef it here. Prevents error messages of this form (usually from the
+ * file getopt.c):
+ *
+ * error: logical '&&' with non-zero constant will always evaluate as true
+ */
+#ifdef strchr
+#undef strchr
+#endif
+
#endif /* __ACGCC_H__ */