aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sysutils/acpica-tools/Makefile2
-rw-r--r--sysutils/acpica-tools/files/patch-source_compiler_aslsupport.l26
2 files changed, 26 insertions, 2 deletions
diff --git a/sysutils/acpica-tools/Makefile b/sysutils/acpica-tools/Makefile
index 286cbcf3f060..3d46a3cfcfc3 100644
--- a/sysutils/acpica-tools/Makefile
+++ b/sysutils/acpica-tools/Makefile
@@ -14,8 +14,6 @@ COMMENT= Tools from the ACPI Component Architecture (ACPICA) project
LICENSE= BSD3CLAUSE GPLv2
LICENSE_COMB= dual
-BROKEN_armv6= fails to compile: comparison of constant -1 with expression of type char is always true
-BROKEN_aarch64= fails to compile: comparison of constant -1 with expression of type char is always true
BROKEN_powerpc64= fails to compile: comparison is always true due to limited range of data type
USES= gmake
diff --git a/sysutils/acpica-tools/files/patch-source_compiler_aslsupport.l b/sysutils/acpica-tools/files/patch-source_compiler_aslsupport.l
new file mode 100644
index 000000000000..54e518d87538
--- /dev/null
+++ b/sysutils/acpica-tools/files/patch-source_compiler_aslsupport.l
@@ -0,0 +1,26 @@
+--- source/compiler/aslsupport.l.orig 2017-09-29 15:34:59 UTC
++++ source/compiler/aslsupport.l
+@@ -525,7 +525,7 @@ static void
+ count (
+ int Type)
+ {
+- int i;
++ int c, i;
+
+
+ switch (Type)
+@@ -547,10 +547,12 @@ count (
+ break;
+ }
+
+- for (i = 0; (yytext[i] != 0) && (yytext[i] != EOF); i++)
++ i = 0;
++ while ((c = yytext[i]) != 0 && c != EOF)
+ {
+- AslInsertLineBuffer (yytext[i]);
++ AslInsertLineBuffer (c);
+ *Gbl_LineBufPtr = 0;
++ i++;
+ }
+ }
+