Skip to content

[doc] parsing errors when generating perltoc from perlfunc #23380

Open
@karenetheridge

Description

@karenetheridge

Where

The script that generates pod/perltoc.pod -- which according to the Makefile is pod/buildtoc.

Description

When I view perldoc perltoc in blead, I see this text:

...
        Portability
        Alphabetical Listing of Perl Functions
            -X FILEHANDLE , -X EXPR, -X DIRHANDLE, -X, abs VALUE , abs,
            accept NEWSOCKET,GENERICSOCKET , alarm SECONDS , alarm, all
            BLOCK LIST, any BLOCK LIST, atan2 Y,X , bind SOCKET,NAME ,
            binmode FILEHANDLE, LAYER , binmode FILEHANDLE, bless
            REF,CLASSNAME , bless REF, Bless the referred-to item into a
            specific package (recommended form):, Bless the referred-to item
            into package "main":, Bless the referred-to item into the
            current package (not inheritable):, break, caller EXPR , caller,
            chdir EXPR , chdir FILEHANDLE, chdir DIRHANDLE, chdir, chmod
            LIST , chomp VARIABLE , chomp( LIST ), chomp, chop VARIABLE ,
            chop( LIST ), chop, chown LIST , chr NUMBER , chr, chroot
            FILENAME , chroot, class NAMESPACE, class NAMESPACE VERSION,
            class NAMESPACE BLOCK, class NAMESPACE VERSION BLOCK, close
            FILEHANDLE , close, closedir DIRHANDLE , connect SOCKET,NAME ,
            continue BLOCK , continue, cos EXPR , cos, crypt PLAINTEXT,SALT
            , dbmclose HASH , dbmopen HASH,DBNAME,MASK , defined EXPR ,
            defined, delete EXPR , die LIST , do BLOCK , do EXPR , dump
            LABEL , dump EXPR, dump, each HASH , each ARRAY , eof FILEHANDLE
            , eof (), eof, eval EXPR , eval BLOCK, eval, String eval, Under
            the "unicode_eval" feature, Outside the "unicode_eval" feature,
            If upgraded, $v will be "\xc4\x80" (i.e., the "use utf8" has no
            effect.), If non-upgraded, $v will be "\x{100}", Block eval,
            evalbytes EXPR , evalbytes, exec LIST , exec PROGRAM LIST,
            exists EXPR , exit EXPR , exit, exp EXPR , exp, fc EXPR , fc,
            fcntl FILEHANDLE,FUNCTION,SCALAR , __FILE__ , field VARNAME ,
            fileno FILEHANDLE , fileno DIRHANDLE, flock FILEHANDLE,OPERATION
            , fork , format , formline PICTURE,LIST , getc FILEHANDLE ,
            getc, getlogin , getpeername SOCKET , getpgrp PID , getppid ,
            getpriority WHICH,WHO , getpwnam NAME , getgrnam NAME,
            gethostbyname NAME, getnetbyname NAME, getprotobyname NAME,
            getpwuid UID, getgrgid GID, getservbyname NAME,PROTO,
            gethostbyaddr ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE,
            getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent,
            getgrent, gethostent, getnetent, getprotoent, getservent,
            setpwent, setgrent, sethostent STAYOPEN, setnetent STAYOPEN,
            setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent,
            endhostent, endnetent, endprotoent, endservent, getsockname
            SOCKET , getsockopt SOCKET,LEVEL,OPTNAME , glob EXPR , glob,
            gmtime EXPR , gmtime, goto LABEL , goto EXPR, goto &NAME, grep
            BLOCK LIST , grep EXPR,LIST, hex EXPR , hex, import LIST , index
            STR,SUBSTR,POSITION , index STR,SUBSTR, int EXPR , int, ioctl
            FILEHANDLE,FUNCTION,SCALAR , join EXPR,LIST , keys HASH , keys
            ARRAY, kill SIGNAL, LIST, kill SIGNAL , last LABEL , last EXPR,
            last, lc EXPR , lc, If "use bytes" is in effect:, Otherwise, if
            "use locale" for "LC_CTYPE" is in effect:, Otherwise, If EXPR
            has the UTF8 flag set:, Otherwise, if "use feature
            'unicode_strings'" or use locale ':not_characters' is in
            effect:, Otherwise:, lcfirst EXPR , lcfirst, length EXPR ,
            length, __LINE__ , link OLDFILE,NEWFILE , listen
            SOCKET,QUEUESIZE , local EXPR , localtime EXPR , localtime, lock
            THING , log EXPR , log, lstat FILEHANDLE , lstat EXPR, lstat
            DIRHANDLE, lstat, m//, map BLOCK LIST , map EXPR,LIST, method
            NAME BLOCK , method NAME : ATTRS BLOCK, mkdir FILENAME,MODE ,
            mkdir FILENAME, mkdir, msgctl ID,CMD,ARG , msgget KEY,FLAGS ,
            msgrcv ID,VAR,SIZE,TYPE,FLAGS , msgsnd ID,MSG,FLAGS , my VARLIST
            , my TYPE VARLIST, my VARLIST : ATTRS, my TYPE VARLIST : ATTRS,
            next LABEL , next EXPR, next, no MODULE VERSION LIST , no MODULE
            VERSION, no MODULE LIST, no MODULE, no VERSION, oct EXPR , oct,
            open FILEHANDLE,MODE,EXPR , open FILEHANDLE,MODE,EXPR,LIST, open
            FILEHANDLE,MODE,REFERENCE, open FILEHANDLE,EXPR, open
            FILEHANDLE, Working with files, Simple examples, About
            filehandles, About modes, Checking the return value, Specifying
            I/O layers in MODE, Using "undef" for temporary files, Opening a
            filehandle into an in-memory scalar, Opening a filehandle into a
            command, Duping filehandles, Legacy usage, Specifying mode and
            filename as a single argument, Assigning a filehandle to a
            bareword, Calling "open" with one argument via global variables,
            Other considerations, Automatic filehandle closure, Automatic
            pipe flushing, Direct versus by-reference assignment of
            filehandles, Whitespace and special characters in the filename
            argument, Invoking C-style "open", Portability issues, opendir
            DIRHANDLE,EXPR , ord EXPR , ord, our VARLIST , our TYPE VARLIST,
            our VARLIST : ATTRS, our TYPE VARLIST : ATTRS, pack
            TEMPLATE,LIST , package NAMESPACE, package NAMESPACE VERSION ,
            package NAMESPACE BLOCK, package NAMESPACE VERSION BLOCK ,
            __PACKAGE__ , __CLASS__ , pipe READHANDLE,WRITEHANDLE , pop
            ARRAY , pop, pos SCALAR , pos, print FILEHANDLE LIST , print
            FILEHANDLE, print LIST, print, printf FILEHANDLE FORMAT, LIST ,
            printf FILEHANDLE, printf FORMAT, LIST, printf, prototype
            FUNCTION , prototype, push ARRAY,LIST , q/STRING/, qq/STRING/,
            qw/STRING/, qx/STRING/, qr/STRING/, quotemeta EXPR , quotemeta,
            rand EXPR , rand, Security:, Data::Entropy, Crypt::Random,
            Math::Random::Secure, Math::TrulyRandom, read
            FILEHANDLE,SCALAR,LENGTH,OFFSET , read FILEHANDLE,SCALAR,LENGTH,
            readdir DIRHANDLE , readline EXPR, readline , readlink EXPR ,
            readlink, readpipe EXPR, readpipe , recv
            SOCKET,SCALAR,LENGTH,FLAGS , redo LABEL , redo EXPR, redo, ref
            EXPR , ref, rename OLDNAME,NEWNAME , require VERSION , require
            EXPR, require, reset EXPR , reset, return EXPR , return, reverse
            LIST , rewinddir DIRHANDLE , rindex STR,SUBSTR,POSITION , rindex
            STR,SUBSTR, rmdir FILENAME , rmdir, s///, say FILEHANDLE LIST ,
            say FILEHANDLE, say LIST, say, scalar EXPR , seek
            FILEHANDLE,POSITION,WHENCE , seekdir DIRHANDLE,POS , select
            FILEHANDLE , select, select RBITS,WBITS,EBITS,TIMEOUT , semctl
            ID,SEMNUM,CMD,ARG , semget KEY,NSEMS,FLAGS , semop KEY,OPSTRING
            , send SOCKET,MSG,FLAGS,TO , send SOCKET,MSG,FLAGS, setpgrp
            PID,PGRP , setpriority WHICH,WHO,PRIORITY , setsockopt
            SOCKET,LEVEL,OPTNAME,OPTVAL , shift ARRAY , shift, shmctl
            ID,CMD,ARG , shmget KEY,SIZE,FLAGS , shmread ID,VAR,POS,SIZE ,
            shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW , sin EXPR ,
            sin, sleep EXPR , sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL ,
            socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL , sort SUBNAME
            LIST , sort BLOCK LIST, sort LIST, splice
            ARRAY,OFFSET,LENGTH,LIST , splice ARRAY,OFFSET,LENGTH, splice
            ARRAY,OFFSET, splice ARRAY, split /PATTERN/,EXPR,LIMIT , split
            /PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST ,
            format parameter index, flags, vector flag, (minimum) width,
            precision, or maximum width , size, order of arguments, sqrt
            EXPR , sqrt, srand EXPR , srand, stat FILEHANDLE , stat EXPR,
            stat DIRHANDLE, stat, state VARLIST , state TYPE VARLIST, state
            VARLIST : ATTRS, state TYPE VARLIST : ATTRS, study SCALAR ,
            study, sub NAME BLOCK , sub NAME (PROTO) BLOCK, sub NAME : ATTRS
            BLOCK, sub NAME (PROTO) : ATTRS BLOCK, __SUB__ , substr
            EXPR,OFFSET,LENGTH,REPLACEMENT , substr EXPR,OFFSET,LENGTH,
            substr EXPR,OFFSET, symlink OLDFILE,NEWFILE , syscall NUMBER,
            LIST , sysopen FILEHANDLE,FILENAME,MODE , sysopen
            FILEHANDLE,FILENAME,MODE,PERMS, sysread
            FILEHANDLE,SCALAR,LENGTH,OFFSET , sysread
            FILEHANDLE,SCALAR,LENGTH, sysseek FILEHANDLE,POSITION,WHENCE ,
            system LIST , system PROGRAM LIST, syswrite
            FILEHANDLE,SCALAR,LENGTH,OFFSET , syswrite
            FILEHANDLE,SCALAR,LENGTH, syswrite FILEHANDLE,SCALAR, tell
            FILEHANDLE , tell, telldir DIRHANDLE , tie
            VARIABLE,CLASSNAME,LIST , tied VARIABLE , time , times , tr///,
            truncate FILEHANDLE,LENGTH , truncate EXPR,LENGTH, uc EXPR , uc,
            ucfirst EXPR , ucfirst, umask EXPR , umask, undef EXPR , undef,
            unlink LIST , unlink, unpack TEMPLATE,EXPR , unpack TEMPLATE,
            unshift ARRAY,LIST , untie VARIABLE , use Module VERSION LIST ,
            use Module VERSION, use Module LIST, use Module, use VERSION,
            utime LIST , values HASH , values ARRAY, vec EXPR,OFFSET,BITS ,
            wait , waitpid PID,FLAGS , wantarray , warn LIST , write
            FILEHANDLE , write EXPR, write, y///

There are a number of errors here -- incorrect whitespace surrounding ,, and also several occurrences where paragraph text is being interpreted as a function name. This might be due to errors in buildtoc, or pod errors in perlfunc, or both.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions