version 1.490, 2020/09/07 07:10:56 |
version 1.491, 2020/09/08 05:26:21 |
Line 3029 ApplyModifiers( |
|
Line 3029 ApplyModifiers( |
|
if (rval[0] != '\0' && |
if (rval[0] != '\0' && |
(c = *nested_p) != '\0' && c != ':' && c != st.endc) { |
(c = *nested_p) != '\0' && c != ':' && c != st.endc) { |
free(freeIt); |
free(freeIt); |
|
/* XXX: apply_mods doesn't sound like "not interested". */ |
goto apply_mods; |
goto apply_mods; |
} |
} |
|
|
Line 3325 VarIsDynamic(GNode *ctxt, const char *va |
|
Line 3326 VarIsDynamic(GNode *ctxt, const char *va |
|
* varNoError if there was a parse error and VARE_UNDEFERR was not set. |
* varNoError if there was a parse error and VARE_UNDEFERR was not set. |
* |
* |
* Parsing should continue at str + *lengthPtr. |
* Parsing should continue at str + *lengthPtr. |
|
* TODO: Document the value of *lengthPtr on parse errors. It might be |
|
* 0, or +1, or the index of the parse error, or the guessed end of the |
|
* variable expression. |
|
* |
|
* If var_Error is returned, a diagnostic may or may not have been |
|
* printed. XXX: This is inconsistent. |
|
* |
|
* If varNoError is returned, a diagnostic may or may not have been |
|
* printed. XXX: This is inconsistent, and as of 2020-09-08, returning |
|
* varNoError is even used to return a regular, non-error empty string. |
* |
* |
* After using the returned value, *freePtr must be freed, preferably |
* After using the returned value, *freePtr must be freed, preferably |
* using bmake_free since it is NULL in most cases. |
* using bmake_free since it is NULL in most cases. |