diff options
| author | Syndamia <kamen@syndamia.com> | 2023-11-23 09:33:09 +0200 |
|---|---|---|
| committer | Syndamia <kamen@syndamia.com> | 2023-11-23 09:33:09 +0200 |
| commit | 87780bde959a8740ba7241faecced7aeb771ee12 (patch) | |
| tree | 67bf82786dcdac50ff5702abeda0286088fdc6ed | |
| parent | 66deac2a1ddc3bebff73a76752e18f9933391661 (diff) | |
| download | csma-87780bde959a8740ba7241faecced7aeb771ee12.tar csma-87780bde959a8740ba7241faecced7aeb771ee12.tar.gz csma-87780bde959a8740ba7241faecced7aeb771ee12.zip | |
[preproc] Proper macro name handling on stage2 macro match
| -rw-r--r-- | preproc.awk | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/preproc.awk b/preproc.awk index 962c36d..4eb1718 100644 --- a/preproc.awk +++ b/preproc.awk @@ -163,9 +163,14 @@ stage2 && gotNameOnly { stage2 && /^[[:blank:]]*<[^>]*>/ { match($0, /<[^>]*>/) - macroName = substr($0, RSTART, RLENGTH) - if ($0 ~ "{") depth = 1 - else gotNameOnly = 1 + if ($0 ~ "{") { + macroName = "" + depth = gsub("{", "{") - gsub("}", "}") + } + else { + macroName = substr($0, RSTART, RLENGTH) + gotNameOnly = 1 + } next } |
