From f1df6a389b7a9b35d1be89e402182a9bfae36cb8 Mon Sep 17 00:00:00 2001 From: Bart Van Assche Date: Thu, 17 Sep 2015 18:39:14 +0000 Subject: [PATCH] scripts/specialize-patch: Fix #elif handling git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6511 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- scripts/specialize-patch | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/scripts/specialize-patch b/scripts/specialize-patch index 55cd4f51f..edf903464 100755 --- a/scripts/specialize-patch +++ b/scripts/specialize-patch @@ -215,22 +215,22 @@ function evaluate(stmnt, pattern, arg, op, result) { sub(pattern, (op[1] != 0) && (op[2] != 0), stmnt) } - pattern="^+#if[[:blank:]]*([01])[[:blank:]]*\\&\\&[[:blank:]]*(!*[[:blank:]]*defined[[:blank:]]*\\([[:blank:]]*[A-Za-z0-9_]*[[:blank:]]*\\))$" + pattern="^+#(if|elif)[[:blank:]]*([01])[[:blank:]]*\\&\\&[[:blank:]]*(!*[[:blank:]]*defined[[:blank:]]*\\([[:blank:]]*[A-Za-z0-9_]*[[:blank:]]*\\))$" while (match(stmnt, pattern, op) != 0) { - stmnt = "+#if " (op[1] != 0 ? op[2] : op[1]) + stmnt = "+#" op[1] " " (op[2] != 0 ? op[3] : op[2]) } - pattern="^+#if[[:blank:]]*(!*[[:blank:]]*defined[[:blank:]]*\\([[:blank:]]*[A-Za-z0-9_]*[[:blank:]]*\\))\\&\\&[[:blank:]]*([01])[[:blank:]]*$" + pattern="^+#(if|elif)[[:blank:]]*(!*[[:blank:]]*defined[[:blank:]]*\\([[:blank:]]*[A-Za-z0-9_]*[[:blank:]]*\\))\\&\\&[[:blank:]]*([01])[[:blank:]]*$" while (match(stmnt, pattern, op) != 0) { - stmnt = "+#if " (op[2] != 0 ? op[1] : op[2]) + stmnt = "+#" op[1] " " (op[3] != 0 ? op[2] : op[3]) } - pattern="^+#if[[:blank:]]*(!*[[:blank:]]*[A-Za-z0-9_]*)[[:blank:]]*\\&\\&[[:blank:]]*([01])[[:blank:]]*$" + pattern="^+#(if|elif)[[:blank:]]*(!*[[:blank:]]*[A-Za-z0-9_]*)[[:blank:]]*\\&\\&[[:blank:]]*([01])[[:blank:]]*$" while (match(stmnt, pattern, op) != 0) { - stmnt = "+#if " (op[2] != 0 ? op[1] : op[2]) + stmnt = "+#" op[1] " " (op[3] != 0 ? op[2] : op[3]) } pattern="(-*[0-9]+)[[:blank:]]*\\|\\|[[:blank:]]*(-*[0-9]+)" @@ -239,10 +239,10 @@ function evaluate(stmnt, pattern, arg, op, result) { sub(pattern, (op[1] != 0) || (op[2] != 0), stmnt) } - pattern="^+#if[[:blank:]]*([01])[[:blank:]]*\\|\\|[[:blank:]]*(!*[[:blank:]]*defined[[:blank:]]*\\([[:blank:]]*[A-Za-z0-9_]*[[:blank:]]*\\))$" + pattern="^+#(if|elif)[[:blank:]]*([01])[[:blank:]]*\\|\\|[[:blank:]]*(!*[[:blank:]]*defined[[:blank:]]*\\([[:blank:]]*[A-Za-z0-9_]*[[:blank:]]*\\))$" while (match(stmnt, pattern, op) != 0) { - stmnt = "+#if " (op[1] == 0 ? op[2] : op[1]) + stmnt = "+#" op[1] " " (op[2] == 0 ? op[3] : op[2]) } pattern="\\(([01])[[:blank:]]*\\|\\|[[:blank:]]*(!*[[:blank:]]*defined[[:blank:]]*\\([[:blank:]]*[A-Za-z0-9_]*[[:blank:]]*\\))\\)"