diff options
author | Arne Georg Gleditsch <argggh@taniquetil.(none)> | 2009-08-17 08:52:04 +0200 |
---|---|---|
committer | Arne Georg Gleditsch <argggh@taniquetil.(none)> | 2009-08-17 08:52:04 +0200 |
commit | 7f5d4f37d8d3240b8c3a91be79c0585e6ca8a9d4 (patch) | |
tree | f2f78cd7073fbf6a2dc238114e9fe834b40b9959 /lib/LXRng/Lang/GnuAsm.pm | |
parent | 18bbb85315b190ccf5698fab3a39b576e7a2dbcd (diff) |
Handle embedded escaped string-terminators.
Diffstat (limited to 'lib/LXRng/Lang/GnuAsm.pm')
-rw-r--r-- | lib/LXRng/Lang/GnuAsm.pm | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/LXRng/Lang/GnuAsm.pm b/lib/LXRng/Lang/GnuAsm.pm index acdcdef..4ad83d8 100644 --- a/lib/LXRng/Lang/GnuAsm.pm +++ b/lib/LXRng/Lang/GnuAsm.pm @@ -95,8 +95,8 @@ sub parsespec { 'atom', '[.][a-z0-9]+', undef, # Directives 'comment', '/\*', '\*/', 'comment', '//', "\$", - 'string', '"', '"', - 'string', "'", "'", + 'string', '"(?:[^\\\\]*\\\\.)*[^\\\\]*"', undef, + 'string', "'(?:[^\\\\]*\\\\.)*[^\\\\]*'", undef, 'atom', '#\s*(?:ifn?def|define|else|endif|undef)', undef, 'include', '#\s*include\s+"', '"', 'include', '#\s*include\s+<', '>', @@ -115,8 +115,8 @@ sub markuphandlers { qr/[^\n]+/ => sub { $markup->format_comment(@_) }; $subst{'string'} = new Subst::Complex - qr/\n/ => $format_newline, - qr/[^\n\"\']+/ => sub { $markup->format_string(@_) }; + qr/\n/ => $format_newline, + qr/[^\n]+/ => sub { $markup->format_string(@_) }; $subst{'include'} = new Subst::Complex qr/\n/ => $format_newline, |