44 lines
1.2 KiB
Diff
44 lines
1.2 KiB
Diff
|
|
From 0f5ce25e8a67bb55de5de18e02c8c9afe2a31ec7 Mon Sep 17 00:00:00 2001
|
||
|
|
From: Alan Modra <amodra@gmail.com>
|
||
|
|
Date: Thu, 28 Dec 2023 22:12:17 +1030
|
||
|
|
Subject: [PATCH 036/123] LoongArch: Commas inside double quotes
|
||
|
|
|
||
|
|
This adds an extra feature: Commas inside double quotes are not an
|
||
|
|
arg delimiter, and thus can be part of the arg.
|
||
|
|
|
||
|
|
* loongarch-coder.c (loongarch_split_args_by_comma): Commas
|
||
|
|
inside quotes are not arg delimiters.
|
||
|
|
---
|
||
|
|
opcodes/loongarch-coder.c | 6 +++++-
|
||
|
|
1 file changed, 5 insertions(+), 1 deletion(-)
|
||
|
|
|
||
|
|
diff --git a/opcodes/loongarch-coder.c b/opcodes/loongarch-coder.c
|
||
|
|
index b6835276..c5b09509 100644
|
||
|
|
--- a/opcodes/loongarch-coder.c
|
||
|
|
+++ b/opcodes/loongarch-coder.c
|
||
|
|
@@ -18,6 +18,7 @@
|
||
|
|
along with this program; see the file COPYING3. If not,
|
||
|
|
see <http://www.gnu.org/licenses/>. */
|
||
|
|
#include "sysdep.h"
|
||
|
|
+#include <stdbool.h>
|
||
|
|
#include "opcode/loongarch.h"
|
||
|
|
|
||
|
|
int
|
||
|
|
@@ -256,9 +257,12 @@ loongarch_split_args_by_comma (char *args, const char *arg_strs[])
|
||
|
|
|
||
|
|
if (*args)
|
||
|
|
{
|
||
|
|
+ bool inquote = false;
|
||
|
|
arg_strs[num++] = args;
|
||
|
|
for (; *args; args++)
|
||
|
|
- if (*args == ',')
|
||
|
|
+ if (*args == '"')
|
||
|
|
+ inquote = !inquote;
|
||
|
|
+ else if (*args == ',' && !inquote)
|
||
|
|
{
|
||
|
|
if (MAX_ARG_NUM_PLUS_2 - 1 == num)
|
||
|
|
goto out;
|
||
|
|
--
|
||
|
|
2.33.0
|
||
|
|
|