diff options
Diffstat (limited to 'compilation/transform.e')
| -rw-r--r-- | compilation/transform.e | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/compilation/transform.e b/compilation/transform.e index a6c26a3..4895827 100644 --- a/compilation/transform.e +++ b/compilation/transform.e @@ -4817,8 +4817,13 @@ allocate-transformation-state s" transformation-state" variable 2 pick over hex-pack-trace swap ~ (output point, string length, string pointer) - drop over - hex-output-metadata-entry-type-string-literal swap + drop 2dup over + ~ (output point, string length, output point, string length, output point) + hex-output-metadata-entry-type-push-subitem-string swap + add-hex-output-metadata-entry + ~ (output point, string length) + hex-output-metadata-entry-type-line-comment + s" '#' (string literal with null)" add-hex-output-metadata-entry ; ~ The purpose of this word is to make sure that the memory-sliding @@ -4865,7 +4870,8 @@ allocate-transformation-state s" transformation-state" variable dup hex-output-metadata-entry-type @ dup hex-output-metadata-entry-type-string-literal = - swap hex-output-metadata-entry-type-raw-string-literal = || { + swap dup hex-output-metadata-entry-type-raw-string-literal = || + swap hex-output-metadata-entry-type-push-subitem-string = || { dup hex-output-metadata-entry-content @ ~ (source, destination, length, scan pointer, content pointer) dup 5 pick <= |