Hello all, While looking over the new jsonpath stuff I noticed the keyword table wasn't declared const. Shouldn't the table and the actual keyword strings both be declared const? Perhaps something like the attached (untested) patch.
-Mark
diff --git a/src/backend/utils/adt/jsonpath_scan.l b/src/backend/utils/adt/jsonpath_scan.l index 110ea21..5019b57 100644 --- a/src/backend/utils/adt/jsonpath_scan.l +++ b/src/backend/utils/adt/jsonpath_scan.l @@ -287,7 +287,7 @@ typedef struct keyword int16 len; bool lowercase; int val; - char *keyword; + const char *keyword; } keyword; /* @@ -295,7 +295,7 @@ typedef struct keyword * alphabetical order */ -static keyword keywords[] = { +static const keyword keywords[] = { { 2, false, IS_P, "is"}, { 2, false, TO_P, "to"}, { 3, false, ABS_P, "abs"}, @@ -324,7 +324,7 @@ checkSpecialVal() { int res = IDENT_P; int diff; - keyword *StopLow = keywords, + const keyword *StopLow = keywords, *StopHigh = keywords + lengthof(keywords), *StopMiddle;