Follow-up Comment #9, bug #66919 (group groff):

Okay, then, we need to burn this down to first principles, because you are
blinding me with your claims that the `hcode` request is **ever** "failing to
accept a special character as a first argument".

As far as I can tell, it is doing so with perfect reliability.  But something
is going wrong that you're not happy with and we need to identify what that
is.

Apply the following patch.


$ git diff
diff --git a/src/roff/troff/input.cpp b/src/roff/troff/input.cpp
index 0bf7533c5..1ced88ebe 100644
--- a/src/roff/troff/input.cpp
+++ b/src/roff/troff/input.cpp
@@ -8030,6 +8030,7 @@ static void set_hyphenation_codes()
              " got %1", tok.description());
        break;
       }
+      debug("assigning hyphenation code to special or indexed character");
     }
     tok.next();
     if (!has_arg()) {


Running the patched GNU _troff_ with your "66919.groff" file (comment #0) and
my subsequent "66919[bcd].groff" files, I get the following.


$ ./build/test-groff -a -Wbreak ATTIC/66919.groff
troff:ps.tmac:84: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:85: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:86: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:87: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:88: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:58: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:58: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:59: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:59: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:60: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:60: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:61: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:61: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:62: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:62: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:63: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:63: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:64: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:64: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:65: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:65: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:66: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:66: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:67: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:67: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:68: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:68: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:69: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:69: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:70: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:70: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:71: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:71: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:72: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:72: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:73: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:73: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:74: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:74: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:75: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:75: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:76: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:76: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:77: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:77: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:78: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:78: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:79: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:79: debug: assigning hyphenation code to special or indexed
character
troff:ATTIC/66919.groff:1: debug: assigning hyphenation code to special or
indexed character
special character "~o"
  is not translated
  does not have a macro
  special translation: 0
  hyphenation code: 0
  flags: 0
  ASCII code: 0
  asciify code: 245
  is found
  is transparently translatable
  is translatable as input
  mode: normal
special character "~o"
  is not translated
  does not have a macro
  special translation: 0
  hyphenation code: 245
  flags: 0
  ASCII code: 0
  asciify code: 245
  is found
  is transparently translatable
  is translatable as input
  mode: normal
$ ./build/test-groff -a -Wbreak ATTIC/66919b.groff
troff:ps.tmac:84: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:85: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:86: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:87: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:88: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:58: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:58: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:59: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:59: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:60: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:60: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:61: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:61: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:62: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:62: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:63: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:63: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:64: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:64: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:65: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:65: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:66: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:66: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:67: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:67: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:68: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:68: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:69: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:69: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:70: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:70: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:71: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:71: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:72: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:72: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:73: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:73: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:74: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:74: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:75: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:75: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:76: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:76: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:77: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:77: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:78: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:78: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:79: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:79: debug: assigning hyphenation code to special or indexed
character
<beginning of page>
lantero<hy>
nial
special character "~o"
  is not translated
  does not have a macro
  special translation: 0
  hyphenation code: 0
  flags: 0
  ASCII code: 0
  asciify code: 245
  is found
  is transparently translatable
  is translatable as input
  mode: normal
lanter<~o>nial
troff:ATTIC/66919b.groff:5: debug: assigning hyphenation code to special or
indexed character
special character "~o"
  is not translated
  does not have a macro
  special translation: 0
  hyphenation code: 0
  flags: 0
  ASCII code: 0
  asciify code: 245
  is found
  is transparently translatable
  is translatable as input
  mode: normal
lanter<~o>nial
$ ./build/test-groff -a -Wbreak ATTIC/66919c.groff
troff:ps.tmac:84: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:85: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:86: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:87: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:88: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:58: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:58: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:59: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:59: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:60: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:60: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:61: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:61: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:62: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:62: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:63: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:63: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:64: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:64: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:65: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:65: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:66: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:66: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:67: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:67: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:68: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:68: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:69: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:69: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:70: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:70: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:71: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:71: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:72: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:72: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:73: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:73: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:74: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:74: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:75: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:75: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:76: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:76: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:77: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:77: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:78: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:78: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:79: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:79: debug: assigning hyphenation code to special or indexed
character
<beginning of page>
lantero<hy>
nial
special character "~o"
  is not translated
  does not have a macro
  special translation: 0
  hyphenation code: 0
  flags: 0
  ASCII code: 0
  asciify code: 245
  is found
  is transparently translatable
  is translatable as input
  mode: normal
lanter<~o>nial
troff:ATTIC/66919c.groff:7: debug: assigning hyphenation code to special or
indexed character
special character "~o"
  is not translated
  does not have a macro
  special translation: 0
  hyphenation code: 111
  flags: 0
  ASCII code: 0
  asciify code: 245
  is found
  is transparently translatable
  is translatable as input
  mode: normal
lanter<~o><hy>
nial
$ ./build/test-groff -a -Wbreak ATTIC/66919d.groff
troff:ps.tmac:84: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:85: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:86: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:87: debug: assigning hyphenation code to special or indexed
character
troff:ps.tmac:88: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:58: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:58: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:59: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:59: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:60: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:60: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:61: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:61: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:62: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:62: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:63: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:63: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:64: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:64: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:65: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:65: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:66: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:66: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:67: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:67: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:68: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:68: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:69: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:69: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:70: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:70: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:71: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:71: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:72: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:72: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:73: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:73: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:74: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:74: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:75: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:75: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:76: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:76: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:77: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:77: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:78: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:78: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:79: debug: assigning hyphenation code to special or indexed
character
troff:en.tmac:79: debug: assigning hyphenation code to special or indexed
character
<beginning of page>
lantero<hy>
nial
special character "~o"
  is not translated
  does not have a macro
  special translation: 0
  hyphenation code: 0
  flags: 0
  ASCII code: 0
  asciify code: 245
  is found
  is transparently translatable
  is translatable as input
  mode: normal
lanter<~o>nial
special character "~o"
  is not translated
  does not have a macro
  special translation: 0
  hyphenation code: 111
  flags: 0
  ASCII code: 0
  asciify code: 245
  is found
  is transparently translatable
  is translatable as input
  mode: normal
lanter<~o><hy>
nial




    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?66919>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature

Reply via email to