Update of bug #65322 (group groff):
Status: Unreproducible => Need Info
Assigned to: None => gbranden
_______________________________________________________
Follow-up Comment #10:
Studying.
commit 33f557eceb58f94ebeabf4668ef0d80746ffa60b (HEAD, refs/bisect/bad)
Author: G. Branden Robinson <[email protected]>
Date: Sun Aug 31 18:40:48 2025 -0500
[troff]: "Asciify" dummy nodes as nothing.
...suppressing non-actionable diagnostic message. (The dummy character
escape sequence produces a dummy node when formatted.)
* src/roff/troff/node.h (class dummy_node): Declare `asciify` member
function, thus overriding base class.
* src/roff/troff/node.cpp (dummy_node::asciify): New member function
does "nothing" in the same way that those of `line_start_node` and
`vertical_size_node`s do: delete the `this` object and return.
Thanks to Deri James for the discussion and proof of concept.
diff --git a/src/roff/troff/node.cpp b/src/roff/troff/node.cpp
index 821ac0ed2..95f0cfe2e 100644
--- a/src/roff/troff/node.cpp
+++ b/src/roff/troff/node.cpp
@@ -4018,6 +4018,11 @@ void vertical_size_node::asciify(macro *)
delete this;
}
+void dummy_node::asciify(macro *)
+{
+ delete this;
+}
+
breakpoint *node::get_breakpoints(hunits /* width */, int /* nspaces */,
breakpoint *rest, bool /* is_inner */)
{
diff --git a/src/roff/troff/node.h b/src/roff/troff/node.h
index a22c2084d..f79204a33 100644
--- a/src/roff/troff/node.h
+++ b/src/roff/troff/node.h
@@ -466,6 +466,7 @@ public:
class dummy_node : public node {
public:
dummy_node(node * nd = 0 /* nullptr */) : node(nd) {}
+ void asciify(macro *);
node *copy();
bool is_same_as(node *);
const char *type();
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?65322>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
signature.asc
Description: PGP signature
