Skip to content

use of `sexed' quotes gnot Unicode #7945

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
p5pRT opened this issue Jun 1, 2005 · 39 comments
Closed

use of `sexed' quotes gnot Unicode #7945

p5pRT opened this issue Jun 1, 2005 · 39 comments

Comments

@p5pRT
Copy link

p5pRT commented Jun 1, 2005

Migrated from rt.perl.org#36079 (status was 'resolved')

Searchable as RT36079$

@p5pRT
Copy link
Author

p5pRT commented Jun 1, 2005

From @nwc10

Created by @nwc10

  Message saved in `perlbug.rep'.

ISO-8859-1 and Unicode define the character ' as an unsexed single quote, and
` as a grave accent. Modern fonts don't show them as a balanced pair of
sexed single quotes. We should audit the perl core (C and Perl) to remove the
obsolescent use of `'. The GNU project have done this for gcc 4, IIRC

See http​://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html

Nicholas Clark

Perl Info

Flags:
    category=core
    severity=low

Site configuration information for perl v5.9.3:

Configured by nick at Wed Jun  1 17:55:21 BST 2005.

Summary of my perl5 (revision 5 version 9 subversion 3 patch 24148) configuration:
  Platform:
    osname=darwin, osvers=7.9.0, archname=darwin-2level
    uname='darwin ship-in-a-bottle 7.9.0 darwin kernel version 7.9.0: wed mar 30 20:11:17 pst 2005; root:xnuxnu-517.12.7.obj~1release_ppc power macintosh powerpc '
    config_args='-Dusedevel=y -Dcc=ccache gcc -Dld=gcc -Ubincompat5005 -Uinstallusrbinperl [email protected] [email protected] -Doptimize=-g -Dusethreads=n -Uuse64bitint -Duselargefiles -Dprefix=~/Sandpit/blead24663 -de'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=undef useithreads=undef usemultiplicity=undef
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='ccache gcc', ccflags ='-fno-common -DPERL_DARWIN -no-cpp-precomp -DDEBUGGING -fno-strict-aliasing -pipe',
    optimize='-g',
    cppflags='-no-cpp-precomp -fno-common -DPERL_DARWIN -no-cpp-precomp -DDEBUGGING -fno-strict-aliasing -pipe'
    ccversion='', gccversion='3.3 20030304 (Apple Computer, Inc. build 1666)', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='env MACOSX_DEPLOYMENT_TARGET=10.3 cc', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /usr/lib
    libs=-ldbm -ldl -lm -lc
    perllibs=-ldl -lm -lc
    libc=/usr/lib/libc.dylib, so=dylib, useshrplib=false, libperl=libperl.a
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_dyld.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', lddlflags=' -bundle -undefined dynamic_lookup -L/usr/local/lib'

Locally applied patches:
    


@INC for perl v5.9.3:
    lib
    /sw/lib/perl5
    /sw/lib/perl5/darwin
    /Users/nick/Sandpit/blead24663/lib/perl5/5.9.3/darwin-2level
    /Users/nick/Sandpit/blead24663/lib/perl5/5.9.3
    /Users/nick/Sandpit/blead24663/lib/perl5/site_perl/5.9.3/darwin-2level
    /Users/nick/Sandpit/blead24663/lib/perl5/site_perl/5.9.3
    /Users/nick/Sandpit/blead24663/lib/perl5/site_perl
    .


Environment for perl v5.9.3:
    DYLD_LIBRARY_PATH (unset)
    HOME=/Users/nick
    LANG (unset)
    LANGUAGE (unset)
    LD_LIBRARY_PATH (unset)
    LOGDIR (unset)
    PATH=/Users/nick/bin:/sw/bin:/sw/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/local/sbin:/sbin:/usr/sbin
    PERL5LIB=/sw/lib/perl5:/sw/lib/perl5/darwin
    PERL_BADLANG (unset)
    SHELL=/bin/bash


@p5pRT
Copy link
Author

p5pRT commented Nov 19, 2011

From @jkeenan

On Wed Jun 01 11​:23​:57 2005, nicholas wrote​:

We should audit the perl core (C and Perl) to
remove the
obsolescent use of `'.

I have written the attached program, 36079.pl, to address the issue
raised in this ticket. Please review, paying particular attention to
the directories and files removed from the scope of the program.

When run on the Perl 5.14.2 source code, I get a list of files with
lines *possibly* needing correction. See attached 'mismatched.txt'.

If the code in the program is deemed reasonable, I and others could
proceed to do the corrections.

Thank you very much.
Jim Keenan

@p5pRT
Copy link
Author

p5pRT commented Nov 19, 2011

From @jkeenan

36079.pl

@p5pRT
Copy link
Author

p5pRT commented Nov 19, 2011

From @jkeenan

Copying​:
  Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
  under certain conditions; type `show c' for details.
  The hypothetical commands `show w' and `show c' should show the
  commands you use may be called something other than `show w' and `show
  program `Gnomovision' (a program to direct compilers to make passes
Cross/cflags-cross-arm​:
  set `echo "$* " | sed -e 's/\.[oc] / /g' -e "s/\.${CROSS_NAME}o / /g" -e 's/\.obj / /g' -e "s/\\$obj_ext / /g"`
  ccflags=`echo $ccflags|sed 's/$f/ /'`
Cross/Makefile-cross-SH​:
  */*) cd `expr X$0 : 'X\(.*\)/'` ;;
  linklibperl="-L $archlibexp/CORE -L `pwd | sed 's/\/UU$//'` -lperl"
  linklibperl="-L `pwd | sed 's/\/UU$//'` -Wl,+s -Wl,+b$archlibexp/CORE -lperl"
  ldlibpth=`echo $ldlibpth | sed 's/​:*$//'`
  *" "*) ldlibpth=`echo $ldlibpth|sed 's/ /\\\\ /g'` ;;
  base=`echo "$f" | sed 's/.*\///'`
  base=`echo "$f" | sed 's/.*\///'`
  base=`echo "$f" | sed 's/.*\///'`
  CCCMD = \`sh \$(shellflags) cflags-cross-${CROSS_NAME} "optimize='\$(OPTIMIZE)'" \$@​\`
  CCCMDSRC = \`sh \$(shellflags) cflags-cross-${CROSS_NAME} "optimize='\$(OPTIMIZE)'" \$<\`
  CCDLFLAGS = `echo $ccdlflags|sed -e 's@​-bE​:.*/perl\.exp@​-bE​:perl.exp@​'`
  -@​for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \
  -@​test ! -s extras.lst || PATH="`pwd`​:${PATH}" PERL5LIB="`pwd`/lib" $(LDLIBPTH) ./perl -Ilib -MCPAN -e '@​ARGV&&make(@​ARGV)' `cat extras.lst`
  -@​test ! -s extras.lst || PATH="`pwd`​:${PATH}" PERL5LIB="`pwd`/lib" $(LDLIBPTH) ./perl -Ilib -MCPAN -e '@​ARGV&&test(@​ARGV)' `cat extras.lst`
  -@​test ! -s extras.lst || PATH="`pwd`​:${PATH}" PERL5LIB="`pwd`/lib" $(LDLIBPTH) ./perl -Ilib -MCPAN -e '@​ARGV&&install(@​ARGV)' `cat extras.lst`
Cross/Makefile.SH.patch​:
  `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
  $(CC) -o miniperl `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
  -@​for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \
generate_uudmap.c​:
  = "`!\"#$%&'()*+,-./0123456789​:;<=>?@​ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_";
  * Because ' ' and '`' map to the same value,
gv.c​:
  case '`'​: /* $` */
  case '`'​:
h2pl/tcbreak​:
  printf "you gave me `%s', which is 0x%02x\n", $c, ord($c);
h2pl/tcbreak2​:
  printf "you gave me `%s', which is 0x%02x\n", $c, ord($c);
INSTALL​:
  util.c​: In function `Perl_form'​:
  If "make install" just says "`install' is up to date" or something
installman​:
  warn("Cannot rename to `$to.$i'​: $!"), return 0
installperl​:
  `./$^X -pibak -e 's{$pwd\/libperl.x}{$archlibexp/CORE/libperl.x}' lib/Config.pm`;
  warn("Cannot rename to `$to.$i'​: $!"), return 0
l1_char_class_tab.h​:
  /* U+60 '`' */ _CC_GRAPH_A|_CC_GRAPH_L1|_CC_PRINT_A|_CC_PRINT_L1|_CC_PUNCT_A|_CC_PUNCT_L1,
lib/charnames.pm​:
  carp("`use charnames' needs explicit imports list");
lib/DB.pm​:
  $f = "file `$f'" unless $f eq '-e';
lib/dumpvar.pl​:
  print "Unknown value for `unctrl'.\n";
lib/File/Basename.pm​:
  # The basename utility deletes any prefix ending with the last slash `/'
lib/Getopt/Std.pm​:
  See ``perldoc $p'' about \$$p\​::STANDARD_HELP_VERSION.]
lib/h2xs.t​:
  # do `$^X -e 'warn "Writing h2xst"' 2>&1`; duplicity.
lib/overload.pm​:
  #print STDERR "Setting `$ {'package'}​::\cO$_' to \\&`$sub'.\n";
  warnings​::warnif ("`$_[0]' is not an overloadable type");
  warnings​::warn ("`$_[1]' is not a code reference");
  `C<cmp>' should return a blessed reference, the autogenerated `C<lt>'
  numerical value of the result of `C<cmp>'. In particular, a working
  print "seven contains `i'\n" if $seven =~ /i/;
  seven contains `i'
  $cnt = $cnt - 1; # Mutator `--' not implemented
  print "defining `$op'\n";
  =item `%s' is not an overloadable type
  =item `%s' is not a code reference
lib/overload.t​:
  warn "`$na', $@​" if $@​;
  # check the `$_[0]' is not an overloadable type warning
  like($a, qr/^`fred' is not an overloadable type at/);
  # check the `$_[1]' is not a code reference warning
  like($a, qr/^`1' is not a code reference at/);
lib/perl5db.pl​:
  # BEGIN and END. Handy with `O f=2'.
  # + `v' command shows versions.
  # + `v' command shows version of readline.
  # primitive completion works (dynamic variables, subs for `b' and `l',
  # options). Can `p %var'
  # + Better help (`h <' now works). New commands <<, >>, {, {{.
  # + `c sub' documented.
  # `]' in a regexp is caught).
  # + `L', `D' and `A' span files now (as documented).
  # + Breakpoints in `require'd code are possible (used in `R').
  # + `b load filename' implemented.
  # + `b postpone subr' implemented.
  # + now only `q' exits debugger (overwritable on $inhibit_exit).
  # + new `inhibitExit' option.
  # Changes​: 0.98​: New command `m' for printing possible methods
  # + 'l -' is a synonym for `-'.
  # + `frame' & 8 to print "expanded args" in stack trace.
  # + new `maxTraceLen' option.
  # + new command `m'
  # + nonstoppable lines do not have `​:' near the line number.
  # + `b compile subname' implemented.
  # + `-' behaves sane now.
  # Changes​: 0.99​: Completion for `f', `m'.
  # + `m' will remove duplicate names instead of duplicate functions.
  # + `b load' strips trailing whitespace.
  # completion ignores leading `|'; takes into account current package
  # when completing a subroutine name (same for `l').
  # + New `O'ption CreateTTY
  # + make `b fork' DWIM with CORE​::GLOBAL​::fork;
  "\nEnter h or `h h' for help, or `$doccmd perldebug' for more help.\n\n";
  print $OUT "Couldn't evaluate `$i' alias​: $@​";
  print $OUT "Choosing $try matching `$file'​:\n";
  print $OUT "No file matching `$file' is loaded.\n";
  &warn("Can't execute `$1'​: $!\n");
  &warn("Can't pipe output to `$pager'");
  print SAVEOUT "Pager `$pager' failed​: ";
  $fall_off_end = 1 unless defined $cmd; # Emulate `q' on EOF
  print $OUT "Will stop on load of `@​files'.\n";
  local $filename_error = " of `$f'";
  local $filename_error = " of `$f'";
  #print $OUT "In postponed_sub for `$subname'.\n";
  $file = $file eq '-e' ? $file : "file `$file'" unless $short;
  open( IN, "<$i" ) or die "Cannot open TTY `$i' for read​: $!";
  open( OUT, ">$o" ) or die "Cannot open TTY `$o' for write​: $!";
  s/^(\w+)(\W?)// or print( $OUT "Invalid option `$_'\n" ), last;
  print( $OUT "Unknown option `$opt'\n" ), next unless $matches;
  print( $OUT "Ambiguous option `$opt'\n" ), next if $matches > 1;
  print( $OUT "Option query `$opt?' followed by non-space `$_'\n" ),
  or print( $OUT "Unclosed option value `$opt$sep$_'\n" ), last;
  "Option `$opt' is non-boolean. Use `$cmd $option=VAL' to set, `$cmd $option?' to query\n";
  &warn("Too late to set IN/OUT filehandles, enabled on next `R'!\n");
  open IN, $in or die "cannot open `$in' for read​: $!";
  open OUT, ">$out" or die "cannot open `$out' for write​: $!";
  &warn("Too late to set TTY, enabled on next `R'!\n") if $term and @​_;
  &warn("Too late to set noTTY, enabled on next `R'!\n") if @​_;
  &warn("Too late to set ReadLine, enabled on next `R'!\n") if @​_;
  &warn("Too late to set up NonStop mode, enabled on next `R'!\n")
  open( LINEINFO, "$stream" ) || &warn("Cannot open `$stream' for write");
  `B<R>' after you set them).
  Type `|h h' for a paged display if this was too hard to read.
  B<b> B<load> I<filename> Set breakpoint on `require'ing the given file.
  `B<R>' after you set them).
  Type `|h' for a paged display if this was too hard to read.
  print $OUT "Use `q' to quit or `R' to restart. `h q' for details.\n";
  "$cmd is now a debugger command\nuse `;$cmd' if you mean Perl code\n";
  "Debugged program terminated. Use `q' to quit or `R' to restart.";
lib/sigtrap.pm​:
  $f = "file `$f'" unless $f eq '-e';
lib/unicore/mktables​:
  '[-!"#$%&\'()*+,./​:;<>?@​[\\\]^_`{|}0-9A-Za-z]',
  '[- 0-9A-Za-z!"#$%&\'()*+,./​:;<>?@​[\\\]^_`{|}
]',
  Description => '[-!"#$%&\'()*+,./​:;<>?@​[\\\]^_`{|}]',
mad/PLXML.pm​:
  sub desc { 'quoted execution (``, qx)' }
mad/t/p55.t​:
  `PERL_XMLDUMP='tmp.xml' ../perl -I ../lib tmp.in 2> tmp.err`;
  `PERL_XMLDUMP='tmp.xml' ../perl $switches -I ../lib $file 2> tmp.err`;
mg.c​:
  case '`'​:
  case '`'​:
  case '`'​: /* ${^PREMATCH} caught below */
op.c​:
  if (strchr("&`'123456789+-\016\022", *GvENAME(gv)))
perl.h​:
  INIT("`!\"#$%&'()*+,-./0123456789​:;<=>?@​ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_");
perly.tab​:
  /* YYRHS -- A `-1'-separated list of the rules' RHS. */
pod/perlapio.pod​:
  `Can set pointer into buffer'
pod/perldebguts.pod​:
  Enter h or `h h' for help.
  Compiling REx `[bc]d(ef*g)+h[ij]k$'
  anchored `de' at 1 floating `gh' at 3..2147483647 (checking floating)
  stclass `ANYOF[bc]' minlen 7
  anchored `de' at 1 floating `gh' at 3..2147483647 (checking floating)
  stclass `ANYOF[bc]' minlen 7
  followed by C<$>, as in C<floating `k'$>.
  Matching `[bc]d(ef*g)+h[ij]k$' against `abcdefg__gh__'
pod/perldebtut.pod​:
  Enter h or `h h' for help, or `man perldebug' for more help.
  Enter h or `h h' for help, or `man perldebug' for more help.
  Enter h or `h h' for help, or `man perldebug' for more help.
  Compiling REx `^pe(a)*rl$'
  floating `'$ at 4..2147483647 (checking floating) stclass `EXACTF <pe>'
  Freeing REx​: `^pe(a)*rl$'
pod/perldebug.pod​:
  $ = main​::infested called from file `Ambulation.pm' line 10
  @​ = Ambulation​::legs(1, 2, 3, 4) called from file `camel_flea' line 7
  $ = main​::pests('bactrian', 4) called from file `camel_flea' line 4
  Will stop on load of `f​:/perllib/lib/Carp.pm'.
pod/perldiag.pod​:
  =item `%s' is not a code reference
  =item `%s' is not an overloadable type
  (W ambiguous) You said something like `@​foo' in a double-quoted string
  =item syntax error at line %d​: `%s' unexpected
pod/perlebcdic.pod​:
  $ascii_data = `echo '$ebcdic_data'| iconv -f IBM-1047 -t ISO8859-1`
  $ebcdic_data = `echo '$ascii_data'| iconv -f ISO8859-1 -t IBM-1047`
  M``$"`P0%!@​<("0H+#`T.#Q`1$A,4%187&!D​:&QP='A\@​(2(C)"4F)R@​I*BLL
  my @​ds_records = `cat //'HLQ.DSNAME'`;
pod/perlfaq3.pod​:
  Download the ExtUtils​::Embed kit from CPAN and run `make test'. If
pod/perlfaq6.pod​:
  while ( /(\b[^\W_\d][\w'-]+\b)/g ) { # misses "`sheep'"
pod/perlfaq8.pod​:
  print STDERR "$0​: cu printed `$_' instead of `Connected'\n";
  @​ok = `grep @​opts '$search_string' @​filenames`;
pod/perlform.pod​:
  print "Wow, I just stored `$^A' in the accumulator!\n";
pod/perlgit.pod​:
  # version 96a8704. Make sure to comment out `git checkout makedepend.SH'
pod/perlgpl.pod​:
  Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
  under certain conditions; type `show c' for details.
  The hypothetical commands `show w' and `show c' should show the
  commands you use may be called something other than `show w' and `show
  program `Gnomovision' (a program to direct compilers to make passes
pod/perlhack.pod​:
  % perlbug -s '[PATCH] `git log --pretty=format​:%s HEAD^1..HEAD`' -f 0001-*.patch
pod/perlipc.pod​:
  print "Parent Pid $$ just read this​: `$line'\n";
  print "Child Pid $$ just read this​: `$line'\n";
  print "Parent Pid $$ just read this​: `$line'\n";
pod/perlreapi.pod​:
  # `paren' will be `1' and `value' will be `ee'
pod/perlreftut.pod​:
  `references', and using references is the key to managing complicated,
  `autovivification'--bringing things to life automatically. Perl saw
pod/perlretut.pod​:
  Compiling REx `a*b+c'
  floating `bc' at 0..2147483647 (checking floating) minlen 2
  Guessing start of match, REx `a*b+c' against `abc'...
  Found floating substr `bc' at offset 1...
  Matching REx `a*b+c' against `abc'
  Freeing REx​: `a*b+c'
  Compiling REx `a*b+c'
  floating `bc' at 0..2147483647 (checking floating) minlen 2
  Guessing start of match, REx `a*b+c' against `abc'...
  Found floating substr `bc' at offset 1...
  Matching REx `a*b+c' against `abc'
  Freeing REx​: `a*b+c'
pod/perlrun.pod​:
  `extproc' handling).
pod/perlsec.pod​:
  $arg, `true`; # Insecure (although it isn't really)
pod/perlsyn.pod​:
  # the `#' on the previous line must be the first char on line
pod/perltoot.pod​:
  croak "Can't access `$name' field in class $type";
Porting/check-cpan-pollution​:
  print `$cmd`; # make sure git knows this isn't a terminal
Porting/epigraphs.pod​:
  `How the creatures order one about, and make one repeat lessons!' thought Alice;
  `I might as well be at school at once.' However, she got up, and began to repeat
  `That's different from what I used to say when I was a child,' said the Gryphon.
  `Well, I never heard it before,' said the Mock Turtle; `but it sounds uncommon
  `I should like to have it explained,' said the Mock Turtle.
  `She can't explain it,' said the Gryphon hastily. `Go on with the next verse.'
  `But about his toes?' the Mock Turtle persisted. `How could he turn them out
  `It's the first position in dancing.' Alice said; but was dreadfully puzzled by
  `cells' in a big `electronic brain.' "
  `What have I got in my pocket?' he said aloud. He was talking to
  `Not fair! not fair!' he hissed. `It isn't fair, my precious, is it,
  stuck to his question, `What have I got in my pocket?' he said
  `S-s-s-s-s,' hissed Gollum. `It must give us three guesseses,
Porting/fixvars​:
  if (/^(.*)​:(\d+)​:\s+\`(\w+)'\s+undeclared/ && -f $1 )
Porting/genlog​:
  warn "Arguments must be change numbers, ignoring `$_'\n";
Porting/Glossary​:
  programs (e.g. I_UNISTD) are already described in config_h.SH. [`configpm'
Porting/make_snapshot.pl​:
  ($sha1, $abbr,$tstamp)= split /\s+/, `git log --pretty='format​:%H %h %ct' -1 $sha1`
  if `git log --pretty='format​:%H' $b | grep $sha1`;
Porting/testall.atom​:
  the_t=`echo base/*.t comp/*.t cmd/*.t run/*.t io/*.t; echo op/*.t uni/*.t pod/*.t x2p/*.t; find ../ext ../lib -name '*.t' -print`
  t/*) t=`echo $t|sed 's​:^t/​::'` ;;
  case "`head -1 $t|egrep -e '^#.* -.*T'`" in
  case "`head -1 $t|egrep -e '^#.* -.*t'`" in
README.os2​:
  `cmd /c 'find "pattern" file'`
  /* XXXX Fill `me' with new value */
README.qnx​:
  dist/Cwd/Cwd.t will complain if `pwd` and cwd don't give
README.solaris​:
  gcc​: file path prefix `/usr/ccs/bin/' never used
README.tru64​:
  Configure[2437]​: Syntax error at line 1 : `config.sh' is not expected.
sv.h​:
  mg.c​: In function `Perl_magic_get'​:
t/base/lex.t​:
  # $^FOO is always global; it doesn't make sense to `my' it.
t/base/term.t​:
  $x = `$^X -le "print 'hi there'"`;
t/comp/proto.t​:
  print "# CORE​:Foo => ($p), \$@​ =&gt; `$@​'\nnot "
t/io/fs.t​:
  `/bin/rm -rf a b c x` if -x '/bin/rm';
t/japh/abigail.t​:
  sub camel (^#87=i@​J&&&#]u'^^s]#'#={123{#}7890t[0.9]9@​+*`"'***}A&&&}n2o}00}t324i;
  h[{e **###{r{+P={**{e^^^#'#i@​{r'^=^{l+{#}H***i[0.9]&@​a5`"'​:&^;&^,*&^$43##@​@​####;
  c}^^^&&&k}&&&}#=e*****[]}'r####'`=437*{#};​::'1[0.9]2@​43`"'*#==[[.{{],,,1278@​#@​);
  print+((($llama=prototype'camel')=y|+{#}$=^*&[0-9]i@​​:;`"',.| |d)&&$llama."\n");
t/lib/cygwin.t​:
  chomp(my $prefix2 = `df | grep -i '^c​: ' | cut -d% -f2 | xargs`);
t/lib/h2ph.h​:
  * Test #if, #elif, #else, #endif, #warn and #error, and `!'
  * Also test whitespace between the `#' and the command
  * circumstances - for example, `#include_next <limits.h>' on a Linux system
  * with `use lib qw(/opt/perl5/lib/site_perl/i586-linux/linux);' or whatever
t/lib/strict/vars​:
  # now that the `@​i should be written as \@​i' failure does not occur
t/lib/warnings/op​:
  Package `%s' not found (did you use the incorrect case?)
toke.c​:
  if (*s == '\'' || *s == '"' || *s == '`') {
  case '`'​:
  if (*peek == '`' || *peek == '\'' || *peek =='"') {
  else if (term == '`') {
t/op/alarm.t​:
  ok($foo eq "foo", '[perl #33928] chomp() fails after alarm(), `sleep`');
t/op/exec.t​:
  my $echo_out = `$Perl -e "print 'ok'" | $Perl -le "print <STDIN>"`;
  is( scalar `$Perl -e "print 'ok'"`,
  "ok", 'no extra newlines on ``' );
  is( scalar `$Perl -e "print 'ok'" | $Perl -e "print <STDIN>"`,
  is( scalar `$Perl -le "print 'ok'" | $Perl -le "print <STDIN>"`,
  is( scalar `$Perl -e "print 'ok'" | $Perl -le "print <STDIN>"`,
  is( scalar `$Perl -le "print 'ok'" | $Perl -e "print <STDIN>"`,
  is( `$Perl -le "print 'ok'"`, "ok\n", 'basic ``' );
  is( <<`END`, "ok\n", '<<`HEREDOC`' );
t/op/groups.t​:
  # like `id -a'.
  # more groups from `id -a' than can be handled by the
  print "ok 1 # SKIP Your platform's `$groups_command' is broken\n";
  # In practical terms, this meant that while `id -a' can be
  print "ok 1 # SKIP darwin's `${groups_command}' can't be trusted\n";
  # Convert the strings produced by parsing `id -a' into a list of group
t/op/leaky-magic.t​:
  for(qw< & ` ' + ] >) {
t/op/lex_assign.t​:
  print "# \$comment​: got `\$a', expected `\$b'\n";
t/op/magic.t​:
  skip "Couldn't shell out to `$cmd', returned code $?", 2 if $?;
  'altering $0 is effective (testing with `ps`)');
t/op/method.t​:
  # are already linked to "pruned" globs. Say, `undef &B​::d' if it were
  # after `delete $B​::{d}; sub B​::d {}' would reach an old subroutine.
t/op/override.t​:
  is( `rm`, "rm 10", '``' );
  :​:is( `rm`, "10 rm", '``' );
t/op/pack.t​:
  M` $"`P0%!@​<("0H+# T.#Q`1$A,4%187&!D​:&QP='A\@​(2(C)"4F)R@​I*BLL
t/op/sub_lval.t​:
  #print "# `@​out' ne `@​in'\nnot " unless "@​out" eq "@​in";
t/op/taint.t​:
  violates_taint(sub { `$echo 1$foo` }, '``', 'backticks');
t/porting/cmp_version.t​:
  print "# $_" for `git --no-pager diff $tag_to_compare '$diff'`;
t/porting/diag.t​:
  Can't %s script `%s' with ARGV[0] being `%s'
  Can't %s `%s' with ARGV[0] being `%s' (looking for executables only, not found)
t/re/pat_advanced.t​:
  is(join ('', @​notIsPunct), '$+<=>^`|
',
t/re/qr.t​:
  is(ref $rx, "Regexp", "qr// blessed into `Regexp' by default");
t/re/regexp.t​:
  $expect = $repl = '-' if $skip_amp and $input =
/\$[&\`\']/;
  if ($err !~ m!^\Q$expect!) { print "not ok $test$todo (compile) $input => `$err'\n"; next TEST }
  print "not ok $test$todo $input => error `$err'\n$code\n$@​\n"; next TEST;
  print "not ok $test$todo ($study) $input => `$got', match=$match\n$code\n";
  print "not ok $test$todo ($study) $input => `$got', match=$match\n$s\n$g\n$code\n";
t/run/script.t​:
  $x = `$Perl -le "print 'ok';"`;
t/run/switcht.t​:
  is( $out, "Hello\n", '`` worked' );
  is( $out, "Hello\n", '`` worked' );
t/x2p/s2p.t​:
  # enclose any `(a)'.. `(c)' in `-'
utils/h2ph.PL​:
  # $eval_index goes into ``#line'' directives, to help locate syntax errors​:
  # Shunt around such directives as `#define FOO FOO'​:
  print STDERR "Skipping directory `$file'\n";
  print STDERR "Skipping `$file'​: not a file or directory\n";
  # Split compiler pre-definitions into `key=value' pairs​:
  Put ``hints'' in the .ph files which will help in locating problems with
  ``Quiet'' mode; don't print out the names of the files being converted.
utils/h2xs.PL​:
  # Before `make install' is performed this script should be runnable with
  # `make test'. After `make install' it should work as `perl $modpname.t'
  @​ARGS = map {/[\s\"\'\`\$*?^|&<>\[\]\{\}\(\)]/ ? "'$_'" : $_} @​ARGS;
utils/libnetcfg.PL​:
  Hostname `$host' does not seem to exist, please enter again
  do some basic tests when you run `make test'
  This will cause `make test' to be quite a bit slower and, if your
  die "Cannot create `$libnet_cfg_out'​: $!";
utils/perlivp.PL​:
  usage("unknown flag​: `$flag'") unless 'HhPpVva' =~ /\Q$flag/;
  warn "$0​: `$flag' flag already set\n" if $opt{$flag}++;
  # We cannot merely check the variable `$^X' in general since on many
  print "## Checking Perl binary via variable `\$perlpath' = $perlpath.\n" if $opt{'p'};
  print "## Perl binary `$perlpath' appears executable.\n" if $opt{'v'};
  print "# Perl binary `$perlpath' does not appear executable.\n";
  print "## Checking Perl version via variable `\$]'.\n" if $opt{'p'};
  print "## Perl version `$]' appears installed as expected.\n" if $opt{'v'};
  print "# Perl version `$]' installed, expected $ivp_VERSION.\n";
  print "## Checking roots of the Perl library directory tree via variable `\@​INC'.\n" if $opt{'p'};
  print "## Perl \@​INC directory `$_' exists.\n" if $opt{'v'};
  print "# Perl \@​INC directory `$_' does not appear to exist.\n";
  print "## Module `$_' appears to be installed.\n" if $opt{'v'};
  print "# Needed module `$_' does not appear to be properly installed.\n";
  print "## Module `$_' appears to be installed.\n" if $opt{'v'};
  print "# Required module `$_' does not appear to be properly installed.\n";
  print "## Unnecessary module `$unnecessary' does not appear to be installed.\n" if $opt{'v'};
  print "# Unnecessary module `$unnecessary' appears to be installed.\n";
  print "## Perl header `$_' appears to be installed.\n" if $opt{'v'};
  print "# Perl header `$_' does not appear to be properly installed.\n";
  =item * print "# Perl binary `$perlpath' does not appear executable.\n";
  =item * print "# Perl version `$]' installed, expected $ivp_VERSION.\n";
  =item * print "# Perl \@​INC directory `$_' does not appear to exist.\n";
  =item * print "# Needed module `$_' does not appear to be properly installed.\n";
  =item * print "# Required module `$_' does not appear to be properly installed.\n";
  =item * print "# Unnecessary module `bLuRfle' appears to be installed.\n";
  =item * print "# Perl header `$_' does not appear to be properly installed.\n";
vms/descrip_mms.template​:
  # but leave `installable' files (images, library) intact
  # cleansrc -- `realclean' + purge *.c,*.h,descrip.mms
  # copies live in [.vms], and the `clean' target will delete copies of
vms/vms.c​:
  case '`'​:
  case '`'​:
  if (strchr("\"`!#%^&()=+\'@​[]{}​:\\|<>_.", *(cp2+1))) {
vms/vmsish.h​:
  /* prototype section start marker; `typedef' passes through cpp */
  /* prototype section end marker; `typedef' passes through cpp */
win32/bin/pl2bat.pl​:
  Can be a regex if it begins with `/'
  it begins with `/' (the trailing '/' is optional and a trailing
win32/bin/runperl.pl​:
  die "`$0' not found.\n";
  die "Failed to exec `$0'​: $!";
  [..runs the perl script `foo'..]
  [..runs the perl script `foo'..]
win32/bin/search.pl​:
  warn "$0​: warning, can't underline-safe ``$regex''.\n";
win32/ce-helpers/makedist.pl​:
  `zip -R perl-$opts{'cross-name'} *`;
x2p/s2p.PL​:
  to standard output. The filename `C<->' may be used to read standard input.
  Any address may be followed by an exclamation mark (`C<!>'), selecting
  backslash (`C<\>').
  `C<\>' at the point of the split; the true end of a line is marked with
  a `C<$>'. Escapes are​: `\a', `\t', `\n', `\f', `\r', `\e' for
  BEL, HT, LF, FF, CR, ESC, respectively, and `\' followed by a three-digit
  and the replacement, precede the character by a backslash (`C<\>').
  Within the replacement, an ampersand (`C<&>') is replaced by the string
  matching the regular expression. The strings `C<\1>' through `C<\9>' are
  To get a literal `C<&>' or `C<\>' in the replacement text, precede it
  character, and a backslash followed by an `n' is replaced by a newline
  two characters in the script are `C<#n>', automatic printing of output is
  Warn( "unexpected `}'", $fl );
  Warn( "ambiguous translation for character `$fc' in `y' command",
  To include a literal `C<^>', place it anywhere else but first. To
  initial B<^>. To include a literal `C<->' make it the first (or
  (Note that neither is identical to Perl's `\b' atom.)
  Warn( "`\\' cannot be last in pattern", $fl );
  Warn( "unmatched `\\)'", $fl );
  Warn( "unmatched `\\{'", $fl );
  Warn( "maximum less than minimum in `\\{$rep\\}'",
  Warn( "invalid repeat clause `\\{$rep\\}'", $fl );
  } else { ## \ <char> => <char> ("as if `\' were not present")
  Warn( "unmatched `['", $fl );
  $cnt =
s/([\\\$])/\\$1/g; # `\', `$' are magic in Perl []
  ## may have a trailing `-' before `]'
  Warn( "unmatched `['", $fl );
  Warn( "unmatched `\\('", $fl );
  Warn( "`\\' cannot be last in substitution", $fl );
  Warn( "invalid address after `,'", $fl );
  # address modifier `!'
  Warn( "unknown command `$h'", $fl );
  Warn( "`s' command requires argument", $fl );
  Warn( "conflicting flags `$global$nmatch'", $fl );
  Warn( "`y' command requires argument", $fl );
  Warn( "`\\' not valid as delimiter in `y' command", $fl );
  Warn( "malformed `y' command argument", $fl );
  Warn( "malformed `y' command argument", $fl );
  Warn( "string lengths in `y' command differ", $fl );
  Warn( "start of unterminated `{'", $bl );
  Warn( "undefined label `$lab'", $used );
  Warn( "illegal option `$opt'" );
  =item ambiguous translation for character `%s' in `y' command
  =item `[' cannot be last in pattern
  A `[' in a BRE indicates the beginning of a I<bracket expression>.
  =item `\' cannot be last in pattern
  A `\' in a BRE is used to make the subsequent character literal.
  =item `\' cannot be last in substitution
  A `\' in a substitution string is used to make the subsequent character literal.
  =item conflicting flags `%s'
  In an B<s> command, either the `g' flag and an n-th occurrence flag, or
  `1' through `9' are permitted.
  =item illegal option `%s'
  The BRE and substitution may not be delimited with `\' or newline.
  =item invalid address after `,'
  =item invalid repeat clause `\{%s\}'
  =item malformed `y' command argument
  =item maximum less than minimum in `\{%s\}'
  =item `\' not valid as delimiter in `y' command
  =item `s' command requires argument
  =item start of unterminated `{'
  =item string lengths in `y' command differ
  =item undefined label `%s'
  =item unexpected `}'
  =item unknown command `%s'
  =item unterminated `['
  =item unterminated `\('
  =item `\{' without closing `\}'
  =item `\)' without preceding `\('
  =item `y' command requires argument
  The B<l> command will show escape characters (ESC) as `C<\e>', but
  The meaning of an empty regular expression (`C<//>'), as defined by B<sed>,

@p5pRT
Copy link
Author

p5pRT commented Nov 19, 2011

The RT System itself - Status changed from 'new' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Nov 19, 2011

From @tamias

On Sat, Nov 19, 2011 at 08​:51​:55AM -0800, James E Keenan via RT wrote​:

On Wed Jun 01 11​:23​:57 2005, nicholas wrote​:

We should audit the perl core (C and Perl) to
remove the
obsolescent use of `'.

I have written the attached program, 36079.pl, to address the issue
raised in this ticket. Please review, paying particular attention to
the directories and files removed from the scope of the program.

When run on the Perl 5.14.2 source code, I get a list of files with
lines *possibly* needing correction. See attached 'mismatched.txt'.

There seems to be a significant number of false positives. How about this
regex instead?

/(?​:^|(?<!=)\s|[\"\`\(\[])`[^`']*'/

That still finds some false positives, but it's an improvement anyway.

Ronald

@p5pRT
Copy link
Author

p5pRT commented Nov 19, 2011

From @cpansprout

On Sat Nov 19 08​:51​:55 2011, jkeenan wrote​:

On Wed Jun 01 11​:23​:57 2005, nicholas wrote​:

We should audit the perl core (C and Perl) to
remove the
obsolescent use of `'.

I have written the attached program, 36079.pl, to address the issue
raised in this ticket. Please review, paying particular attention to
the directories and files removed from the scope of the program.

When run on the Perl 5.14.2 source code, I get a list of files with
lines *possibly* needing correction. See attached 'mismatched.txt'.

If the code in the program is deemed reasonable, I and others could
proceed to do the corrections.

Thank you for volunteering.

Please note that dist/ and ext/ are maintained in core.

--

Father Chrysostomos

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

On Sat Nov 19 10​:52​:27 2011, sprout wrote​:

Thank you for volunteering.

Please note that dist/ and ext/ are maintained in core.

Here is a patch that covers 69 files; there are more to be done.

With this patch, 'make test' will PASS all tests *except*
t/porting/cmp_version.t. I don't yet understand that test well enough
to know what is going wrong.

I could also supply this as approx. 17 files created by
git-format-patch. Let me know what format works best for you.

Please review.

Thank you very much.
Jim Keenan

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

36079..46267efc8cfa.diff

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @cpansprout

On Sat Nov 19 19​:29​:17 2011, jkeenan wrote​:

On Sat Nov 19 10​:52​:27 2011, sprout wrote​:

Thank you for volunteering.

Please note that dist/ and ext/ are maintained in core.

Here is a patch that covers 69 files; there are more to be done.

With this patch, 'make test' will PASS all tests *except*
t/porting/cmp_version.t. I don't yet understand that test well enough
to know what is going wrong.

If the version number of a module hasn’t changed since the last release,
any change necessitates a version bump.

I could also supply this as approx. 17 files created by
git-format-patch. Let me know what format works best for you.

git-format-patch files are generally easier to apply.

Please review.

I haven’t looked through it thoroughly, but I noticed a few things​:

I noticed one place where `'' (already confusing) has become '''
(definitely confusing) and at least one place where ``...'' has become
''...'' instead of "...".

This change is erroneous​:

@​@​ -3913,7 +3913,7 @​@​ sub dq {
sub pp_backtick {
  my $self = shift;
  my($op, $cx) = @​_;
- # skip pushmark if it exists (readpipe() vs ``)
+ # skip pushmark if it exists (readpipe() vs '`)
  my $child = $op->first->sibling->isa('B​::NULL')
  ? $op->first : $op->first->sibling;
  if ($self->pure_string($child)) {

I wonder​: why not use ‘ and ’ for comments? Almost all the source is in
UTF-8 these days. (I’m not saying to go ahead and use them. Give
others time to chime in. Also, test names and error messages should
probably stick to ASCII most of the time.)

--

Father Chrysostomos

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

On Sat Nov 19 22​:07​:57 2011, sprout wrote​:

On Sat Nov 19 19​:29​:17 2011, jkeenan wrote​:

Here is a patch that covers 69 files; there are more to be done.

The patches attached replace the first batch and complete (for all
practical purposes) the process.

If the version number of a module hasn’t changed since the last release,
any change necessitates a version bump.

Done.

git-format-patch files are generally easier to apply.

Supplied.

I noticed one place where `'' (already confusing) has become '''
(definitely confusing) and at least one place where ``...'' has become
''...'' instead of "...".

Agreed; I've tried to rationalize this as much as possible.

This change is erroneous​:

@​@​ -3913,7 +3913,7 @​@​ sub dq {
sub pp_backtick {
my $self = shift;
my($op, $cx) = @​_;
- # skip pushmark if it exists (readpipe() vs ``)
+ # skip pushmark if it exists (readpipe() vs '`)
my $child = $op->first->sibling->isa('B​::NULL')
? $op->first : $op->first->sibling;
if ($self->pure_string($child)) {

Fixed.

I wonder​: why not use ‘ and ’ for comments? Almost all the source is in
UTF-8 these days. (I’m not saying to go ahead and use them. Give
others time to chime in. Also, test names and error messages should
probably stick to ASCII most of the time.)

Umm, that sounds like an invitation to bikeshedding. Can we rule that
out-of-scope for this RT? This ticket touches many files, so let's not
complicate the review process unnecessarily.

Thank you very much.
Jim Keenan

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0008-RT-36079-Convert-to.patch
From f8a1f46b355e5e4b658db70517685d1213ad835e Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 19:49:10 -0500
Subject: [PATCH 08/23] [RT #36079] Convert ` to '.

---
 pod/perlapio.pod    |    2 +-
 pod/perldebguts.pod |   16 ++++++++--------
 pod/perldebug.pod   |    8 ++++----
 pod/perldiag.pod    |    8 ++++----
 pod/perlform.pod    |    2 +-
 pod/perlgit.pod     |    2 +-
 pod/perlgpl.pod     |   10 +++++-----
 pod/perlipc.pod     |    6 +++---
 pod/perlreapi.pod   |    2 +-
 pod/perlreftut.pod  |    4 ++--
 pod/perlretut.pod   |   24 ++++++++++++------------
 11 files changed, 42 insertions(+), 42 deletions(-)

diff --git a/pod/perlapio.pod b/pod/perlapio.pod
index f3023d9..bb7115f 100644
--- a/pod/perlapio.pod
+++ b/pod/perlapio.pod
@@ -390,7 +390,7 @@ vary from handle to handle.
 
   PerlIO_fast_gets(f) = PerlIO_has_cntptr(f) && \
                         PerlIO_canset_cnt(f) && \
-                        `Can set pointer into buffer'
+                        'Can set pointer into buffer'
 
 =item B<PerlIO_has_cntptr(f)>
 
diff --git a/pod/perldebguts.pod b/pod/perldebguts.pod
index 9bc0b63..8ae6e7b 100644
--- a/pod/perldebguts.pod
+++ b/pod/perldebguts.pod
@@ -227,7 +227,7 @@ information.  For example, contrast this expression trace:
  Loading DB routines from perl5db.pl patch level 0.94
  Emacs support available.
 
- Enter h or `h h' for help.
+ Enter h or 'h h' for help.
 
  main::(-e:1):   0
    DB<1> sub foo { 14 }
@@ -412,7 +412,7 @@ scoped.
 
 The debugging output at compile time looks like this:
 
-  Compiling REx `[bc]d(ef*g)+h[ij]k$'
+  Compiling REx '[bc]d(ef*g)+h[ij]k$'
   size 45 Got 364 bytes for offset annotations.
   first at 1
   rarest char g at 0
@@ -433,8 +433,8 @@ The debugging output at compile time looks like this:
     42: EXACT <k>(44)
     44: EOL(45)
     45: END(0)
-  anchored `de' at 1 floating `gh' at 3..2147483647 (checking floating) 
-        stclass `ANYOF[bc]' minlen 7 
+  anchored 'de' at 1 floating 'gh' at 3..2147483647 (checking floating) 
+        stclass 'ANYOF[bc]' minlen 7 
   Offsets: [45]
   	1[4] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 5[1]
   	0[0] 12[1] 0[0] 6[1] 0[0] 7[1] 0[0] 9[1] 8[1] 0[0] 10[1] 0[0]
@@ -450,8 +450,8 @@ label I<id> of the first node that does a match.
 
 The 
 
-  anchored `de' at 1 floating `gh' at 3..2147483647 (checking floating) 
-        stclass `ANYOF[bc]' minlen 7 
+  anchored 'de' at 1 floating 'gh' at 3..2147483647 (checking floating) 
+        stclass 'ANYOF[bc]' minlen 7 
 
 line (split into two lines above) contains optimizer
 information.  In the example shown, the optimizer found that the match 
@@ -520,7 +520,7 @@ being C<BOL>, C<MBOL>, or C<GPOS>.  See the table below.
 =back
 
 If a substring is known to match at end-of-line only, it may be
-followed by C<$>, as in C<floating `k'$>.
+followed by C<$>, as in C<floating 'k'$>.
 
 The optimizer-specific information is used to avoid entering (a slow) regex
 engine on strings that will not definitely match.  If the C<isall> flag
@@ -805,7 +805,7 @@ entered and that all of the job was therefore done by the optimizer.
 
 If the regex engine was entered, the output may look like this:
 
-  Matching `[bc]d(ef*g)+h[ij]k$' against `abcdefg__gh__'
+  Matching '[bc]d(ef*g)+h[ij]k$' against 'abcdefg__gh__'
     Setting an EVAL scope, savestack=3
      2 <ab> <cdefg__gh_>    |  1: ANYOF
      3 <abc> <defg__gh_>    | 11: EXACT <d>
diff --git a/pod/perldebug.pod b/pod/perldebug.pod
index 89334eb..69245f9 100644
--- a/pod/perldebug.pod
+++ b/pod/perldebug.pod
@@ -969,9 +969,9 @@ X<backtrace> X<stack, backtrace>
 Here's an example of what a stack backtrace via C<T> command might
 look like:
 
-    $ = main::infested called from file `Ambulation.pm' line 10
-    @ = Ambulation::legs(1, 2, 3, 4) called from file `camel_flea' line 7
-    $ = main::pests('bactrian', 4) called from file `camel_flea' line 4
+    $ = main::infested called from file 'Ambulation.pm' line 10
+    @ = Ambulation::legs(1, 2, 3, 4) called from file 'camel_flea' line 7
+    $ = main::pests('bactrian', 4) called from file 'camel_flea' line 4
 
 The left-hand character up there indicates the context in which the
 function was called, with C<$> and C<@> meaning scalar or list
@@ -1044,7 +1044,7 @@ Another way to debug compile-time code is to start the debugger, set a
 breakpoint on the I<load> of some module:
 
     DB<7> b load f:/perllib/lib/Carp.pm
-  Will stop on load of `f:/perllib/lib/Carp.pm'.
+  Will stop on load of 'f:/perllib/lib/Carp.pm'.
 
 and then restart the debugger using the C<R> command (if possible).  One can use C<b
 compile subname> for the same purpose.
diff --git a/pod/perldiag.pod b/pod/perldiag.pod
index 2d97af6..ba59c28 100644
--- a/pod/perldiag.pod
+++ b/pod/perldiag.pod
@@ -2419,13 +2419,13 @@ then all regular expressions behaved as if they were written using C</m>.)
 perls, has been removed as of 5.9.3 and is no longer supported. You
 should use the printf/sprintf functions instead.
 
-=item `%s' is not a code reference
+=item '%s' is not a code reference
 
 (W overload) The second (fourth, sixth, ...) argument of overload::constant
 needs to be a code reference. Either an anonymous subroutine, or a reference
 to a subroutine.
 
-=item `%s' is not an overloadable type
+=item '%s' is not an overloadable type
 
 (W overload) You tried to overload a constant type the overload package is
 unaware of.
@@ -3830,7 +3830,7 @@ C<m/$(?)\/> (for example: C<m/foo$(?)\s+bar/>).
 
 =item Possible unintended interpolation of %s in string
 
-(W ambiguous) You said something like `@foo' in a double-quoted string
+(W ambiguous) You said something like '@foo' in a double-quoted string
 but there was no array C<@foo> in scope at the time. If you wanted a
 literal @foo, then write it as \@foo; otherwise find out what happened
 to the array you apparently lost track of.
@@ -4482,7 +4482,7 @@ the only way to figure out what's triggering the error is to call
 C<perl -c> repeatedly, chopping away half the program each time to see
 if the error went away.  Sort of the cybernetic version of S<20 questions>.
 
-=item syntax error at line %d: `%s' unexpected
+=item syntax error at line %d: '%s' unexpected
 
 (A) You've accidentally run your script through the Bourne shell instead
 of Perl.  Check the #! line, or manually feed your script into Perl
diff --git a/pod/perlform.pod b/pod/perlform.pod
index 6a4fc48..b00d394 100644
--- a/pod/perlform.pod
+++ b/pod/perlform.pod
@@ -409,7 +409,7 @@ For example:
     @<<<  @|||  @>>>
     END
 
-    print "Wow, I just stored `$^A' in the accumulator!\n";
+    print "Wow, I just stored '$^A' in the accumulator!\n";
 
 Or to make an swrite() subroutine, which is to write() what sprintf()
 is to printf(), do this:
diff --git a/pod/perlgit.pod b/pod/perlgit.pod
index feb5535..b14ad7e 100644
--- a/pod/perlgit.pod
+++ b/pod/perlgit.pod
@@ -400,7 +400,7 @@ testcase:
   # If you get './makedepend: 1: Syntax error: Unterminated quoted
   # string' when bisecting versions of perl older than 5.9.5 this hack
   # will work around the bug in makedepend.SH which was fixed in
-  # version 96a8704c. Make sure to comment out `git checkout makedepend.SH'
+  # version 96a8704c. Make sure to comment out 'git checkout makedepend.SH'
   # below too.
   git show blead:makedepend.SH > makedepend.SH
 
diff --git a/pod/perlgpl.pod b/pod/perlgpl.pod
index de1791a..ed1e836 100644
--- a/pod/perlgpl.pod
+++ b/pod/perlgpl.pod
@@ -259,13 +259,13 @@ For the Perl Artistic License, see L<perlartistic>.
  when it starts in an interactive mode:
  
      Gnomovision version 69, Copyright (C) 19xx name of author
-     Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+     Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type 'show w'.
      This is free software, and you are welcome to redistribute it
-     under certain conditions; type `show c' for details.
+     under certain conditions; type 'show c' for details.
  
- The hypothetical commands `show w' and `show c' should show the
+ The hypothetical commands 'show w' and 'show c' should show the
  appropriate parts of the General Public License.  Of course, the
- commands you use may be called something other than `show w' and `show
+ commands you use may be called something other than 'show w' and 'show
  c'; they could even be mouse-clicks or menu items--whatever suits your
  program.
  
@@ -274,7 +274,7 @@ For the Perl Artistic License, see L<perlartistic>.
  necessary.  Here a sample; alter the names:
  
    Yoyodyne, Inc., hereby disclaims all copyright interest in the
-   program `Gnomovision' (a program to direct compilers to make passes
+   program 'Gnomovision' (a program to direct compilers to make passes
    at assemblers) written by James Hacker.
  
    <signature of Ty Coon>, 1 April 1989
diff --git a/pod/perlipc.pod b/pod/perlipc.pod
index c064f2a..6709827 100644
--- a/pod/perlipc.pod
+++ b/pod/perlipc.pod
@@ -826,7 +826,7 @@ reopen the appropriate handles to STDIN and STDOUT and call other processes.
         close PARENT_WTR;
         print CHILD_WTR "Parent Pid $$ is sending this\n";
         chomp($line = <CHILD_RDR>);
-        print "Parent Pid $$ just read this: `$line'\n";
+        print "Parent Pid $$ just read this: '$line'\n";
         close CHILD_RDR; close CHILD_WTR;
         waitpid($pid, 0);
     } else {
@@ -834,7 +834,7 @@ reopen the appropriate handles to STDIN and STDOUT and call other processes.
         close CHILD_RDR; 
         close CHILD_WTR;
         chomp($line = <PARENT_RDR>);
-        print "Child Pid $$ just read this: `$line'\n";
+        print "Child Pid $$ just read this: '$line'\n";
         print PARENT_WTR "Child Pid $$ is sending this\n";
         close PARENT_RDR; 
         close PARENT_WTR;
@@ -864,7 +864,7 @@ have the socketpair() system call, it will do this all for you.
         close PARENT;
         print CHILD "Parent Pid $$ is sending this\n";
         chomp($line = <CHILD>);
-        print "Parent Pid $$ just read this: `$line'\n";
+        print "Parent Pid $$ just read this: '$line'\n";
         close CHILD;
         waitpid($pid, 0);
     } else {
diff --git a/pod/perlreapi.pod b/pod/perlreapi.pod
index e2a48e3..5e45620 100644
--- a/pod/perlreapi.pod
+++ b/pod/perlreapi.pod
@@ -289,7 +289,7 @@ sure this is used as the new value (or reject it).
 Example:
 
     if ("ook" =~ /(o*)/) {
-        # `paren' will be `1' and `value' will be `ee'
+        # 'paren' will be '1' and 'value' will be 'ee'
         $1 =~ tr/o/e/;
     }
 
diff --git a/pod/perlreftut.pod b/pod/perlreftut.pod
index 7898b6d..9565562 100644
--- a/pod/perlreftut.pod
+++ b/pod/perlreftut.pod
@@ -7,7 +7,7 @@ perlreftut - Mark's very short tutorial about references
 One of the most important new features in Perl 5 was the capability to
 manage complicated data structures like multidimensional arrays and
 nested hashes.  To enable these, Perl 5 introduced a feature called
-`references', and using references is the key to managing complicated,
+'references', and using references is the key to managing complicated,
 structured data in Perl.  Unfortunately, there's a lot of funny syntax
 to learn, and the main manual page can be hard to follow.  The manual
 is quite complete, and sometimes people find that a problem, because
@@ -402,7 +402,7 @@ This is Perl, so it does the exact right thing.  It sees that you want
 to push C<Athens> onto an array that doesn't exist, so it helpfully
 makes a new, empty, anonymous array for you, installs it into
 C<%table>, and then pushes C<Athens> onto it.  This is called
-`autovivification'--bringing things to life automatically.  Perl saw
+'autovivification'--bringing things to life automatically.  Perl saw
 that they key wasn't in the hash, so it created a new hash entry
 automatically. Perl saw that you wanted to use the hash value as an
 array, so it created a new empty array and installed a reference to it
diff --git a/pod/perlretut.pod b/pod/perlretut.pod
index 218e6b3..b9b3106 100644
--- a/pod/perlretut.pod
+++ b/pod/perlretut.pod
@@ -2792,7 +2792,7 @@ information is displayed in color on terminals that can display
 termcap color sequences.  Here is example output:
 
     % perl -e 'use re "debug"; "abc" =~ /a*b+c/;'
-    Compiling REx `a*b+c'
+    Compiling REx 'a*b+c'
     size 9 first at 1
        1: STAR(4)
        2:   EXACT <a>(0)
@@ -2800,11 +2800,11 @@ termcap color sequences.  Here is example output:
        5:   EXACT <b>(0)
        7: EXACT <c>(9)
        9: END(0)
-    floating `bc' at 0..2147483647 (checking floating) minlen 2
-    Guessing start of match, REx `a*b+c' against `abc'...
-    Found floating substr `bc' at offset 1...
+    floating 'bc' at 0..2147483647 (checking floating) minlen 2
+    Guessing start of match, REx 'a*b+c' against 'abc'...
+    Found floating substr 'bc' at offset 1...
     Guessed: match at offset 0
-    Matching REx `a*b+c' against `abc'
+    Matching REx 'a*b+c' against 'abc'
       Setting an EVAL scope, savestack=3
        0 <> <abc>             |  1:  STAR
                                EXACT <a> can match 1 times out of 32767...
@@ -2815,13 +2815,13 @@ termcap color sequences.  Here is example output:
        2 <ab> <c>             |  7:      EXACT <c>
        3 <abc> <>             |  9:      END
     Match successful!
-    Freeing REx: `a*b+c'
+    Freeing REx: 'a*b+c'
 
 If you have gotten this far into the tutorial, you can probably guess
 what the different parts of the debugging output tell you.  The first
 part
 
-    Compiling REx `a*b+c'
+    Compiling REx 'a*b+c'
     size 9 first at 1
        1: STAR(4)
        2:   EXACT <a>(0)
@@ -2835,15 +2835,15 @@ starred object, in this case C<'a'>, and if it matches, goto line 4,
 i.e., C<PLUS(7)>.  The middle lines describe some heuristics and
 optimizations performed before a match:
 
-    floating `bc' at 0..2147483647 (checking floating) minlen 2
-    Guessing start of match, REx `a*b+c' against `abc'...
-    Found floating substr `bc' at offset 1...
+    floating 'bc' at 0..2147483647 (checking floating) minlen 2
+    Guessing start of match, REx 'a*b+c' against 'abc'...
+    Found floating substr 'bc' at offset 1...
     Guessed: match at offset 0
 
 Then the match is executed and the remaining lines describe the
 process:
 
-    Matching REx `a*b+c' against `abc'
+    Matching REx 'a*b+c' against 'abc'
       Setting an EVAL scope, savestack=3
        0 <> <abc>             |  1:  STAR
                                EXACT <a> can match 1 times out of 32767...
@@ -2854,7 +2854,7 @@ process:
        2 <ab> <c>             |  7:      EXACT <c>
        3 <abc> <>             |  9:      END
     Match successful!
-    Freeing REx: `a*b+c'
+    Freeing REx: 'a*b+c'
 
 Each step is of the form S<C<< n <x> <y> >>>, with C<< <x> >> the
 part of the string matched and C<< <y> >> the part not yet
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0019-RT-36079-Where-sensible-replace-consecutive-single-q.patch
From 90b297c8805809d3527c0c5711d981771e9ace85 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sun, 20 Nov 2011 08:33:12 -0500
Subject: [PATCH 19/23] [RT #36079] Where sensible, replace consecutive single quotation marks with a double quotation mark.

---
 dist/B-Deparse/Deparse.pm    |   40 ++++++++++++++++++++--------------------
 dist/Cwd/Cwd.xs              |    2 +-
 ext/File-Glob/Glob.pm        |    2 +-
 ext/File-Glob/bsd_glob.c     |    2 +-
 ext/SDBM_File/sdbm/README    |   26 +++++++++++++-------------
 ext/SDBM_File/sdbm/readme.ms |   18 +++++++++---------
 ext/Socket/Socket.xs         |    2 +-
 7 files changed, 46 insertions(+), 46 deletions(-)

diff --git a/dist/B-Deparse/Deparse.pm b/dist/B-Deparse/Deparse.pm
index 116562b..82a7ec2 100644
--- a/dist/B-Deparse/Deparse.pm
+++ b/dist/B-Deparse/Deparse.pm
@@ -3913,11 +3913,11 @@ sub dq {
 sub pp_backtick {
     my $self = shift;
     my($op, $cx) = @_;
-    # skip pushmark if it exists (readpipe() vs '`)
+    # skip pushmark if it exists (readpipe() vs ``)
     my $child = $op->first->sibling->isa('B::NULL')
-	? $op->first : $op->first->sibling;
+        ? $op->first : $op->first->sibling;
     if ($self->pure_string($child)) {
-	return single_delim("qx", '`', $self->dq($child, 1));
+        return single_delim("qx", '`', $self->dq($child, 1));
     }
     unop($self, @_, "readpipe");
 }
@@ -3940,25 +3940,25 @@ sub double_delim {
     my($from, $to) = @_;
     my($succeed, $delim);
     if ($from !~ m[/] and $to !~ m[/]) {
-	return "/$from/$to/";
+        return "/$from/$to/";
     } elsif (($succeed, $from) = balanced_delim($from) and $succeed) {
-	if (($succeed, $to) = balanced_delim($to) and $succeed) {
-	    return "$from$to";
-	} else {
-	    for $delim ('/', '"', '#') { # note no ''' -- s''' is special
-		return "$from$delim$to$delim" if index($to, $delim) == -1;
-	    }
-	    $to =~ s[/][\\/]g;
-	    return "$from/$to/";
-	}
+        if (($succeed, $to) = balanced_delim($to) and $succeed) {
+            return "$from$to";
+        } else {
+            for $delim ('/', '"', '#') { # note no "'' -- s''" is special
+                return "$from$delim$to$delim" if index($to, $delim) == -1;
+            }
+            $to =~ s[/][\\/]g;
+            return "$from/$to/";
+        }
     } else {
-	for $delim ('/', '"', '#') { # note no '
-	    return "$delim$from$delim$to$delim"
-		if index($to . $from, $delim) == -1;
-	}
-	$from =~ s[/][\\/]g;
-	$to =~ s[/][\\/]g;
-	return "/$from/$to/";	
+        for $delim ('/', '"', '#') { # note no '
+            return "$delim$from$delim$to$delim"
+                if index($to . $from, $delim) == -1;
+        }
+        $from =~ s[/][\\/]g;
+        $to =~ s[/][\\/]g;
+        return "/$from/$to/";    
     }
 }
 
diff --git a/dist/Cwd/Cwd.xs b/dist/Cwd/Cwd.xs
index 0b4f363..5393116 100644
--- a/dist/Cwd/Cwd.xs
+++ b/dist/Cwd/Cwd.xs
@@ -36,7 +36,7 @@
  *    products derived from this software without specific prior written
  *    permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ''AS IS'' AND
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND
  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
diff --git a/ext/File-Glob/Glob.pm b/ext/File-Glob/Glob.pm
index a32d342..3f86ddc 100644
--- a/ext/File-Glob/Glob.pm
+++ b/ext/File-Glob/Glob.pm
@@ -359,7 +359,7 @@ following copyright:
        may be used to endorse or promote products derived from this software
        without specific prior written permission.
 
-    THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ''AS IS'' AND
+    THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS" AND
     ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
diff --git a/ext/File-Glob/bsd_glob.c b/ext/File-Glob/bsd_glob.c
index 89bb726..5019af1 100644
--- a/ext/File-Glob/bsd_glob.c
+++ b/ext/File-Glob/bsd_glob.c
@@ -17,7 +17,7 @@
  *    may be used to endorse or promote products derived from this software
  *    without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ''AS IS'' AND
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS" AND
  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
diff --git a/ext/SDBM_File/sdbm/README b/ext/SDBM_File/sdbm/README
index a18ac6a..1fbe28b 100644
--- a/ext/SDBM_File/sdbm/README
+++ b/ext/SDBM_File/sdbm/README
@@ -32,7 +32,7 @@ derived  from  any  licensed,  proprietary  or   copyrighted
 software.
 
      The sdbm implementation is based on  a  1978  algorithm
-[Lar78] by P.-A. (Paul) Larson known as ''Dynamic Hashing''.
+[Lar78] by P.-A. (Paul) Larson known as "Dynamic Hashing".
 In the course of searching for a substitute for ndbm, I pro-
 totyped  three different external-hashing algorithms [Lar78,
 Fag79, Lit80] and ultimately chose Larson's algorithm  as  a
@@ -70,7 +70,7 @@ _________________________
                            - 2 -
 
 
-store operation will not ''wander away'' trying to split its
+store operation will not "wander away" trying to split its
 data  pages  to insert a datum that cannot (due to elaborate
 worst-case situations) be inserted. (It will  fail  after  a
 pre-defined number of attempts.)
@@ -298,30 +298,30 @@ References
 
 
 [Lar78]
-    P.-A. Larson, ''Dynamic Hashing'', BIT, vol.   18,   pp.
+    P.-A. Larson, "Dynamic Hashing", BIT, vol.   18,   pp.
     184-201, 1978.
 
 [Tho90]
     Ken Thompson, private communication, Nov. 1990
 
 [Lit80]
-    W. Litwin, '' Linear Hashing: A new tool  for  file  and
-    table addressing'', Proceedings of the 6th Conference on
+    W. Litwin, " Linear Hashing: A new tool  for  file  and
+    table addressing", Proceedings of the 6th Conference on
     Very Large  Dabatases  (Montreal), pp.   212-223,   Very
     Large Database Foundation, Saratoga, Calif., 1980.
 
 [Fag79]
     R. Fagin, J.  Nievergelt,  N.  Pippinger,  and   H.   R.
-    Strong,  ''Extendible Hashing - A Fast Access Method for
-    Dynamic Files'', ACM  Trans.  Database  Syst.,  vol.  4,
+    Strong,  "Extendible Hashing - A Fast Access Method for
+    Dynamic Files", ACM  Trans.  Database  Syst.,  vol.  4,
     no.3, pp. 315-344, Sept. 1979.
 
 [Wal84]
-    Rich Wales, ''Discussion of "dbm"  data  base  system'',
+    Rich Wales, "Discussion of 'dbm'  data  base  system",
     USENET newsgroup unix.wizards, Jan. 1984.
 
 [Tor87]
-    Chris Torek,  ''Re:   dbm.a   and   ndbm.a   archives'',
+    Chris Torek,  "Re:   dbm.a   and   ndbm.a   archives",
 
 
 
@@ -337,13 +337,13 @@ References
     USENET newsgroup comp.unix, 1987.
 
 [Mar79]
-    G. N. Martin, ''Spiral Storage: Incrementally   Augment-
-    able   Hash  Addressed  Storage'', Technical Report #27,
+    G. N. Martin, "Spiral Storage: Incrementally   Augment-
+    able   Hash  Addressed  Storage", Technical Report #27,
     University of Varwick, Coventry, U.K., 1979.
 
 [Enb88]
-    R.  J.  Enbody  and  H.   C.   Du,   ''Dynamic   Hashing
-    Schemes'',ACM  Computing  Surveys,  vol.  20, no. 2, pp.
+    R.  J.  Enbody  and  H.   C.   Du,   "Dynamic   Hashing
+    Schemes",ACM  Computing  Surveys,  vol.  20, no. 2, pp.
     85-113, June 1988.
 
 
diff --git a/ext/SDBM_File/sdbm/readme.ms b/ext/SDBM_File/sdbm/readme.ms
index da344ff..6e8137c 100644
--- a/ext/SDBM_File/sdbm/readme.ms
+++ b/ext/SDBM_File/sdbm/readme.ms
@@ -70,7 +70,7 @@ The \fIsdbm\fP library is not derived from any licensed, proprietary or
 copyrighted software.
 .PP
 The \fIsdbm\fP implementation is based on a 1978 algorithm
-[Lar78] by P.-A. (Paul) Larson known as ''Dynamic Hashing''.
+[Lar78] by P.-A. (Paul) Larson known as "Dynamic Hashing".
 In the course of searching for a substitute for \fIndbm\fP, I
 prototyped three different external-hashing algorithms [Lar78, Fag79, Lit80]
 and ultimately chose Larson's algorithm as a basis of the \fIsdbm\fP
@@ -94,7 +94,7 @@ smaller. The \fIsdbm\fP implementation is also faster than \fIndbm\fP
 in database creation.
 Unlike the \fIndbm\fP, the \fIsdbm\fP
 .CW store
-operation will not ''wander away'' trying to split its
+operation will not "wander away" trying to split its
 data pages to insert a datum that \fIcannot\fP (due to elaborate worst-case
 situations) be inserted. (It will fail after a pre-defined number of attempts.)
 .SH
@@ -323,31 +323,31 @@ References
 .LP
 .IP [Lar78] 4m
 P.-A. Larson,
-''Dynamic Hashing'', \fIBIT\fP, vol.  18,  pp. 184-201, 1978.
+"Dynamic Hashing", \fIBIT\fP, vol.  18,  pp. 184-201, 1978.
 .IP [Tho90] 4m
 Ken Thompson, \fIprivate communication\fP, Nov. 1990
 .IP [Lit80] 4m
 W. Litwin,
-'' Linear Hashing: A new tool  for  file  and table addressing'',
+" Linear Hashing: A new tool  for  file  and table addressing",
 \fIProceedings of the 6th Conference on Very Large  Dabatases  (Montreal)\fP,
 pp.  212-223,  Very Large Database Foundation, Saratoga, Calif., 1980.
 .IP [Fag79] 4m
 R. Fagin, J.  Nievergelt,  N.  Pippinger,  and  H.  R. Strong,
-''Extendible Hashing - A Fast Access Method for Dynamic Files'',
+"Extendible Hashing - A Fast Access Method for Dynamic Files",
 \fIACM Trans. Database Syst.\fP, vol. 4,  no.3, pp. 315-344, Sept. 1979.
 .IP [Wal84] 4m
 Rich Wales,
-''Discussion of "dbm" data base system'', \fIUSENET newsgroup unix.wizards\fP,
+"Discussion of "dbm" data base system", \fIUSENET newsgroup unix.wizards\fP,
 Jan. 1984.
 .IP [Tor87] 4m
 Chris Torek,
-''Re:  dbm.a  and  ndbm.a  archives'', \fIUSENET newsgroup comp.unix\fP,
+"Re:  dbm.a  and  ndbm.a  archives", \fIUSENET newsgroup comp.unix\fP,
 1987.
 .IP [Mar79] 4m
 G. N. Martin,
-''Spiral Storage: Incrementally  Augmentable  Hash  Addressed  Storage'',
+"Spiral Storage: Incrementally  Augmentable  Hash  Addressed  Storage",
 \fITechnical Report #27\fP, University of Varwick, Coventry, U.K., 1979.
 .IP [Enb88] 4m
 R. J. Enbody and H. C. Du,
-''Dynamic Hashing  Schemes'',\fIACM Computing Surveys\fP,
+"Dynamic Hashing  Schemes",\fIACM Computing Surveys\fP,
 vol. 20, no. 2, pp. 85-113, June 1988.
diff --git a/ext/Socket/Socket.xs b/ext/Socket/Socket.xs
index 6f442bc..e164e67 100644
--- a/ext/Socket/Socket.xs
+++ b/ext/Socket/Socket.xs
@@ -96,7 +96,7 @@ my_inet_aton(register const char *cp, struct in_addr *addr)
 		return 0;
 	for (;;) {
 		/*
-		 * Collect number up to ''.''.
+		 * Collect number up to ".".
 		 * Values are specified as for C:
 		 * 0x=hex, 0=octal, other=decimal.
 		 */
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0013-RT-36079-Convert-to.patch
From 4751959fd08d53e92e6cb6cd883130a7c10d7c1e Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 20:09:26 -0500
Subject: [PATCH 13/23] [RT #36079] Convert ` to '.

---
 t/base/lex.t      |    2 +-
 t/comp/proto.t    |    2 +-
 t/lib/h2ph.h      |    8 ++++----
 t/lib/strict/vars |    2 +-
 t/lib/warnings/op |    2 +-
 5 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/t/base/lex.t b/t/base/lex.t
index a5d87f6..ce16ef1 100644
--- a/t/base/lex.t
+++ b/t/base/lex.t
@@ -152,7 +152,7 @@ print $foo;
 #  print "ok 32\n";
 
   # These next two tests are trying to make sure that
-  # $^FOO is always global; it doesn't make sense to `my' it.
+  # $^FOO is always global; it doesn't make sense to 'my' it.
   # 
 
   eval 'my $^X;';
diff --git a/t/comp/proto.t b/t/comp/proto.t
index 2394164..04fea69 100644
--- a/t/comp/proto.t
+++ b/t/comp/proto.t
@@ -409,7 +409,7 @@ print "ok ", $i++, "\n";
 print "# CORE::open => ($p)\nnot " if ($p = prototype('CORE::open')) ne '*;$@';
 print "ok ", $i++, "\n";
 
-print "# CORE:Foo => ($p), \$@ => `$@'\nnot " 
+print "# CORE:Foo => ($p), \$@ => '$@'\nnot " 
     if defined ($p = eval { prototype('CORE::Foo') or 1 }) or $@ !~ /^Can't find an opnumber/;
 print "ok ", $i++, "\n";
 
diff --git a/t/lib/h2ph.h b/t/lib/h2ph.h
index 8026394..18804d5 100644
--- a/t/lib/h2ph.h
+++ b/t/lib/h2ph.h
@@ -36,8 +36,8 @@
 #endif /* __SOME_UNIMPORTANT_PROPERTY */
 
 /* 
- * Test #if, #elif, #else, #endif, #warn and #error, and `!'
- * Also test whitespace between the `#' and the command
+ * Test #if, #elif, #else, #endif, #warn and #error, and '!'
+ * Also test whitespace between the '#' and the command
  */
 #if !(defined __SOMETHING_MORE_IMPORTANT)
 #    warn Be careful...
@@ -68,8 +68,8 @@ function Tru64_Pascal(n: Integer): Integer;
 /* 
  * Test #include, #import and #include_next
  * #include_next is difficult to test, it really depends on the actual
- *  circumstances - for example, `#include_next <limits.h>' on a Linux system
- *  with `use lib qw(/opt/perl5/lib/site_perl/i586-linux/linux);' or whatever
+ *  circumstances - for example, '#include_next <limits.h>' on a Linux system
+ *  with 'use lib qw(/opt/perl5/lib/site_perl/i586-linux/linux);' or whatever
  *  your equivalent is...
  */
 #if 0
diff --git a/t/lib/strict/vars b/t/lib/strict/vars
index d41aa3c..fdd7af3 100644
--- a/t/lib/strict/vars
+++ b/t/lib/strict/vars
@@ -496,7 +496,7 @@ ok
 ########
 
 # Make sure the strict vars failure still occurs
-# now that the `@i should be written as \@i' failure does not occur
+# now that the '@i should be written as \@i' failure does not occur
 # 20000522 [email protected] (MJD)
 use strict 'vars';
 no warnings;
diff --git a/t/lib/warnings/op b/t/lib/warnings/op
index 1a1bb26..006c244 100644
--- a/t/lib/warnings/op
+++ b/t/lib/warnings/op
@@ -85,7 +85,7 @@
         fred() ; sub fred ($$) {}
 
 
-    Package `%s' not found (did you use the incorrect case?)
+    Package '%s' not found (did you use the incorrect case?)
 
     Use of /g modifier is meaningless in split
 
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0023-RT-36079-Convert-to.patch
From 4951580a26e6dc638a77e1c4ed8c93c4b01d87e1 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sun, 20 Nov 2011 10:07:02 -0500
Subject: [PATCH 23/23] [RT #36079] Convert ` to '.

---
 win32/bin/runperl.pl |    2 +-
 x2p/s2p.PL           |   10 +++++-----
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/win32/bin/runperl.pl b/win32/bin/runperl.pl
index 2a8b70c..736d7eb 100644
--- a/win32/bin/runperl.pl
+++ b/win32/bin/runperl.pl
@@ -6,7 +6,7 @@ unless (-f $0) {
 	$_ = "." if $_ eq "";
 	$0 = "$_/$0" , goto doit if -f "$_/$0";
     }
-    die "`$0' not found.\n";
+    die "'$0' not found.\n";
 }
 doit: exec "perl", "-x", $0, @ARGV;
 die "Failed to exec '$0': $!";
diff --git a/x2p/s2p.PL b/x2p/s2p.PL
index ae2b616..cc7ade0 100644
--- a/x2p/s2p.PL
+++ b/x2p/s2p.PL
@@ -987,7 +987,7 @@ sub bre2p($$$){
 	    ### backslash escapes
             my $nc = peek($pat,$ic);
             if( $nc eq '' ){
-                Warn( "`\\' cannot be last in pattern", $fl );
+                Warn( "'\\' cannot be last in pattern", $fl );
                 return undef();
             }
 	    $ic++;
@@ -1192,7 +1192,7 @@ sub sub2p($$$){
 	    ### backslash escapes
             my $nc = peek($subst,$ic);
             if( $nc eq '' ){
-                Warn( "`\\' cannot be last in substitution", $fl );
+                Warn( "'\\' cannot be last in substitution", $fl );
                 return undef();
             }
 	    $ic++;
@@ -1354,7 +1354,7 @@ sub Parse(){
 	} elsif( $tabref->[1] eq 'sub' ){
 	    # s///
 	    if( ! length( $cmd ) ){
-		Warn( "`s' command requires argument", $fl );
+		Warn( "'s' command requires argument", $fl );
 		$error++;
 		next;
 	    }
@@ -1430,13 +1430,13 @@ sub Parse(){
                 $Code .= "# $Commands[$icom]\n" if $doGenerate;
 	    }
 	    if( ! length( $cmd ) ){
-		Warn( "`y' command requires argument", $fl );
+		Warn( "'y' command requires argument", $fl );
 		$error++;
 		next;
 	    }
 	    my $d = substr( $cmd, 0, 1 ); $cmd = substr( $cmd, 1 );
 	    if( $d eq '\\' ){
-		Warn( "`\\' not valid as delimiter in 'y' command", $fl );
+		Warn( "'\\' not valid as delimiter in 'y' command", $fl );
 		$error++;
 		next;
 	    }
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0017-RT-36079-Convert-to.patch
From 6c733ad41cb756329ac9234ffd218ce8e85a9fdd Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 20:21:40 -0500
Subject: [PATCH 17/23] [RT #36079] Convert ` to '.

---
 t/x2p/s2p.t |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/t/x2p/s2p.t b/t/x2p/s2p.t
index 353ac64..9707a8b 100644
--- a/t/x2p/s2p.t
+++ b/t/x2p/s2p.t
@@ -582,7 +582,7 @@ line 8
 ### s ###
 's' => {
   script => <<'[TheEnd]',
-# enclose any `(a)'.. `(c)' in `-'
+# enclose any '(a)'.. '(c)' in '-'
 s/([a-z])/-\1-/g
 
 s/\([abc]\)/-\1-/g
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0022-RT-36079-Convert-to.patch
From db99ce9218d15da5db9a155a3371c971407f2aee Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sun, 20 Nov 2011 10:03:16 -0500
Subject: [PATCH 22/23] [RT #36079] Convert ` to '.

---
 vms/descrip_mms.template |    4 +-
 vms/vmsish.h             |    4 +-
 win32/bin/pl2bat.pl      |    4 +-
 win32/bin/runperl.pl     |    6 +-
 win32/bin/search.pl      |    2 +-
 x2p/s2p.PL               |  136 +++++++++++++++++++++++-----------------------
 6 files changed, 78 insertions(+), 78 deletions(-)

diff --git a/vms/descrip_mms.template b/vms/descrip_mms.template
index 3ce1244..0308d0d 100644
--- a/vms/descrip_mms.template
+++ b/vms/descrip_mms.template
@@ -13,9 +13,9 @@
 #	tidy      -- purge files generated by executing this file
 #	clean     -- remove all intermediate (e.g. object files, C files generated
 #	             during build) files generated by executing this file,
-#	             but leave `installable' files (images, library) intact
+#	             but leave 'installable' files (images, library) intact
 #	realclean -- remove all files generated by executing this file
-#	cleansrc  -- `realclean' + purge *.c,*.h,descrip.mms
+#	cleansrc  -- 'realclean' + purge *.c,*.h,descrip.mms
 #	crtl.opt  -- compiler-specific linker options file (made automatically)
 #
 
diff --git a/vms/vmsish.h b/vms/vmsish.h
index f66fc5d..6975280 100644
--- a/vms/vmsish.h
+++ b/vms/vmsish.h
@@ -796,7 +796,7 @@ void	prime_env_iter (void);
 void	init_os_extras (void);
 int	Perl_vms_status_to_unix(int vms_status, int child_flag);
 int	Perl_unix_status_to_vms(int unix_status);
-/* prototype section start marker; `typedef' passes through cpp */
+/* prototype section start marker; 'typedef' passes through cpp */
 typedef char  __VMS_PROTOTYPES__;
 int	Perl_vmstrnenv (const char *, char *, unsigned long int, struct dsc$descriptor_s **, unsigned long int);
 char *	Perl_vms_realpath (pTHX_ const char *, char *, int *);
@@ -894,7 +894,7 @@ struct passwd *	Perl_my_getpwuid (pTHX_ Uid_t uid);
 void	Perl_my_endpwent (pTHX);
 char *	my_getlogin (void);
 typedef char __VMS_SEPYTOTORP__;
-/* prototype section end marker; `typedef' passes through cpp */
+/* prototype section end marker; 'typedef' passes through cpp */
 
 #ifdef NO_PERL_TYPEDEFS  /* We'll try not to scramble later files */
 #  ifdef __MY_BOOL_TYPE_FAKE
diff --git a/win32/bin/pl2bat.pl b/win32/bin/pl2bat.pl
index 8fdfa3d..64a807c 100644
--- a/win32/bin/pl2bat.pl
+++ b/win32/bin/pl2bat.pl
@@ -26,7 +26,7 @@ Usage:  $0 [-h]
                             a /^#!.*perl/ line was already present).
         -s stripsuffix  strip this suffix from file before appending ".bat"
                             Not case-sensitive
-                            Can be a regex if it begins with `/'
+                            Can be a regex if it begins with '/'
                             Defaults to "/\.plx?/"
         -h              show this help
 EOT
@@ -335,7 +335,7 @@ variable to determine which operating system it is being run from.
 
 Strip a suffix string from file name before appending a ".bat"
 suffix.  The suffix is not case-sensitive.  It can be a regex if
-it begins with `/' (the trailing '/' is optional and a trailing
+it begins with '/' (the trailing '/' is optional and a trailing
 C<$> is always assumed).  Defaults to C</.plx?/>.
 
 =item B<-w>
diff --git a/win32/bin/runperl.pl b/win32/bin/runperl.pl
index 95b33f9..2a8b70c 100644
--- a/win32/bin/runperl.pl
+++ b/win32/bin/runperl.pl
@@ -9,7 +9,7 @@ unless (-f $0) {
     die "`$0' not found.\n";
 }
 doit: exec "perl", "-x", $0, @ARGV;
-die "Failed to exec `$0': $!";
+die "Failed to exec '$0': $!";
 __END__
 
 =head1 NAME
@@ -20,10 +20,10 @@ runperl.bat - "universal" batch file to run perl scripts
 
 	C:\> copy runperl.bat foo.bat
 	C:\> foo
-	[..runs the perl script `foo'..]
+	[..runs the perl script 'foo'..]
 	
 	C:\> foo.bat
-	[..runs the perl script `foo'..]
+	[..runs the perl script 'foo'..]
 	
 
 =head1 DESCRIPTION
diff --git a/win32/bin/search.pl b/win32/bin/search.pl
index 5107a8e..98a320c 100644
--- a/win32/bin/search.pl
+++ b/win32/bin/search.pl
@@ -464,7 +464,7 @@ sub prepare_to_search
 	  ##
 	  if ($underlineOK) {
 	     if ($regex =~ m/[?*+{}()\\.|^\$[]/) {
-		warn "$0: warning, can't underline-safe ``$regex''.\n";
+		warn "$0: warning, can't underline-safe '$regex'.\n";
 	     } else {
 		$regex = join($underline_glue, split(//, $regex));
 	     }
diff --git a/x2p/s2p.PL b/x2p/s2p.PL
index f8e48cd..ae2b616 100644
--- a/x2p/s2p.PL
+++ b/x2p/s2p.PL
@@ -91,7 +91,7 @@ psed - a stream editor
 A stream editor reads the input stream consisting of the specified files
 (or standard input, if none are given), processes is line by line by
 applying a script consisting of edit commands, and writes resulting lines
-to standard output. The filename `C<->' may be used to read standard input.
+to standard output. The filename 'C<->' may be used to read standard input.
 
 The edit script is composed from arguments of B<-e> options and
 script-files, in the given order. A single script argument may be specified
@@ -155,7 +155,7 @@ pattern space for later use.
 A sed address is either a line number or a pattern, which may be combined
 arbitrarily to construct ranges. Lines are numbered across all input files.
 
-Any address may be followed by an exclamation mark (`C<!>'), selecting
+Any address may be followed by an exclamation mark ('C<!>'), selecting
 all lines not matching that address.
 
 =over 4
@@ -174,7 +174,7 @@ A pattern address is a basic regular expression (see
 L<"BASIC REGULAR EXPRESSIONS">), between the delimiting character C</>.
 Any other character except C<\> or newline may be used to delimit a
 pattern address when the initial delimiter is prefixed with a
-backslash (`C<\>').
+backslash ('C<\>').
 
 =back
 
@@ -329,9 +329,9 @@ $ComTab{'l'}=[ 2, '',    \&Emit,       '{ _l() }'                        ]; #okU
 
 Print the contents of the pattern space: non-printable characters are
 shown in C-style escaped form; long lines are split and have a trailing
-`C<\>' at the point of the split; the true end of a line is marked with
-a `C<$>'. Escapes are: `\a', `\t', `\n', `\f', `\r', `\e' for
-BEL, HT, LF, FF, CR, ESC, respectively, and `\' followed by a three-digit
+^'C<\>' at the point of the split; the true end of a line is marked with
+a 'C<$>'. Escapes are: '\a', '\t', '\n', '\f', '\r', '\e' for
+BEL, HT, LF, FF, CR, ESC, respectively, and '\' followed by a three-digit
 octal number for all other non-printable characters.
 
 =cut
@@ -427,15 +427,15 @@ the pattern space that matches the I<regular expression>.
 Any character other than backslash or newline can be used instead of a 
 slash to delimit the regular expression and the replacement.
 To use the delimiter as a literal character within the regular expression
-and the replacement, precede the character by a backslash (`C<\>').
+and the replacement, precede the character by a backslash ('C<\>').
 
 Literal newlines may be embedded in the replacement string by
 preceding a newline with a backslash.
 
-Within the replacement, an ampersand (`C<&>') is replaced by the string
-matching the regular expression. The strings `C<\1>' through `C<\9>' are
+Within the replacement, an ampersand ('C<&>') is replaced by the string
+matching the regular expression. The strings 'C<\1>' through 'C<\9>' are
 replaced by the corresponding subpattern (see L<"BASIC REGULAR EXPRESSIONS">).
-To get a literal `C<&>' or `C<\>' in the replacement text, precede it
+To get a literal 'C<&>' or 'C<\>' in the replacement text, precede it
 by a backslash.
 
 The following I<flags> modify the behaviour of the B<s> command:
@@ -504,7 +504,7 @@ character at the corresponding position in I<string2>. It is possible
 to use any character (other than a backslash or newline) instead of a
 slash to delimit the strings.  Within I<string1> and I<string2>, a
 backslash followed by any character other than a newline is that literal
-character, and a backslash followed by an `n' is replaced by a newline
+character, and a backslash followed by an 'n' is replaced by a newline
 character.
 
 =cut
@@ -549,7 +549,7 @@ $ComTab{'#'}=[ 0, 'str', \&Comment,    ''                                ]; #ok
 =item [0addr]B<#> [I<comment>]
 
 The entire line is ignored (treated as a comment). If, however, the first
-two characters in the script are `C<#n>', automatic printing of output is
+two characters in the script are 'C<#n>', automatic printing of output is
 suppressed, as if the B<-n> option were given on the command line.
 
 =back
@@ -689,7 +689,7 @@ sub EndBlock($$$$$$){
     if( defined( $jcom ) ){
 	$rc = Emit( $addr1, $addr2, $negated, $opcode, $arg, $fl );
     } else {
-	Warn( "unexpected `}'", $fl );
+	Warn( "unexpected '}'", $fl );
 	$rc = 1;
     }
     $rc;
@@ -799,7 +799,7 @@ sub makey($$$){
 	my $fc = substr($fr,$i,1);
 	my $tc = substr($to,$i,1);
 	if( exists( $tr{$fc} ) && $tr{$fc} ne $tc ){
-	    Warn( "ambiguous translation for character `$fc' in `y' command",
+	    Warn( "ambiguous translation for character '$fc' in 'y' command",
 		  $fl );
 	    $error++;
 	}
@@ -924,15 +924,15 @@ as defined in ctype(3).
 If the first character after B<[> is B<^>, the sense of matching is
 inverted.
 
-To include a literal `C<^>', place it anywhere else but first. To
+To include a literal 'C<^>', place it anywhere else but first. To
 include a literal 'C<]>' place it first or immediately after an
-initial B<^>. To include a literal `C<->' make it the first (or
+initial B<^>. To include a literal 'C<->' make it the first (or
 second after B<^>) or last character, or the second endpoint of
 a range.
 
 The special bracket expression constructs C<[[:E<lt>:]]> and C<[[:E<gt>:]]> 
 match the null string at the beginning and end of a word respectively.
-(Note that neither is identical to Perl's `\b' atom.)
+(Note that neither is identical to Perl's '\b' atom.)
 
 =head2 Additional Atoms
 
@@ -1007,7 +1007,7 @@ sub bre2p($$$){
                 $parlev--;
 		$backref++;
                 if( $parlev < 0 ){
-                    Warn( "unmatched `\\)'", $fl );
+                    Warn( "unmatched '\\)'", $fl );
                     return undef();
                 }
                 $res .= ')';
@@ -1015,7 +1015,7 @@ sub bre2p($$$){
             } elsif( $nc eq '{' ){ ## repetition factor \{<i>[,[<j>]]\}
                 my $endpos = index( $pat, '\\}', $ic );
                 if( $endpos < 0 ){
-                    Warn( "unmatched `\\{'", $fl );
+                    Warn( "unmatched '\\{'", $fl );
                     return undef();
                 }
                 my $rep = substr( $pat, $ic+1, $endpos-($ic+1) );
@@ -1029,7 +1029,7 @@ sub bre2p($$$){
                     my $max = $3;
                     if( length( $max ) ){
                         if( $max < $min ){
-                            Warn( "maximum less than minimum in `\\{$rep\\}'",
+                            Warn( "maximum less than minimum in '\\{$rep\\}'",
 				  $fl );
                             return undef();
                         }
@@ -1047,7 +1047,7 @@ sub bre2p($$$){
 			$res .= "{$min$com$max}";
 		    }
                 } else {
-                    Warn( "invalid repeat clause `\\{$rep\\}'", $fl );
+                    Warn( "invalid repeat clause '\\{$rep\\}'", $fl );
                     return undef();
                 }
 
@@ -1077,7 +1077,7 @@ sub bre2p($$$){
 		## \<closing bracketing-delimiter> - keep '\'
 		$res .= "\\$nc";
 
-            } else { ## \ <char> => <char> ("as if `\' were not present")
+            } else { ## \ <char> => <char> ("as if '\' were not present")
                 $res .= $nc;
             }
 
@@ -1105,7 +1105,7 @@ sub bre2p($$$){
 	    }
 	    # check that [ is not trailing
 	    if( $ic >= length( $pat ) - 1 ){
-		Warn( "unmatched `['", $fl );
+		Warn( "unmatched '['", $fl );
 		return undef();
 	    }
 	    # look for [:...:] and x-y
@@ -1113,7 +1113,7 @@ sub bre2p($$$){
 	    if( $rstr =~ /^((?:\[:\(\w+|[><]\):\]|[^]-](?:-[^]])?)*)/ ){
  	        my $cnt = $1;
 		$ic += length( $cnt );
-		$cnt =~ s/([\\\$])/\\$1/g; # `\', `$' are magic in Perl []
+		$cnt =~ s/([\\\$])/\\$1/g; # '\', '$' are magic in Perl []
 		# try some simplifications
  	        my $red = $cnt;
 		if( $red =~ s/0-9// ){
@@ -1130,7 +1130,7 @@ sub bre2p($$$){
 
 	    }
 
-	    ## may have a trailing `-' before `]'
+	    ## may have a trailing '-' before ']'
 	    if( $ic < length($pat) - 1 &&
                 substr( $pat, $ic+1 ) =~ /^(-?])/ ){
 		$ic += length( $1 );
@@ -1139,7 +1139,7 @@ sub bre2p($$$){
 		$add =~ s/^\[(\^?)(\\[dw])]$/ $1 eq '^' ? uc($2) : $2 /e;
 		$res .= $add;
 	    } else {
-		Warn( "unmatched `['", $fl );
+		Warn( "unmatched '['", $fl );
 		return undef();
 	    }
 
@@ -1164,7 +1164,7 @@ sub bre2p($$$){
     }
 
     if( $parlev ){
-       Warn( "unmatched `\\('", $fl );
+       Warn( "unmatched '\\('", $fl );
        return undef();
     }
 
@@ -1282,13 +1282,13 @@ sub Parse(){
 		    next;
 		}
             } else {
-		Warn( "invalid address after `,'", $fl );
+		Warn( "invalid address after ','", $fl );
 		$error++;
 		next;
             }
         }
 
-        # address modifier `!'
+        # address modifier '!'
         #
         $negated = $cmd =~ s/^!\s*//;
 	if( defined( $addr1 ) ){
@@ -1307,7 +1307,7 @@ sub Parse(){
 	#
         if( $cmd !~ s/^([:#={}abcdDgGhHilnNpPqrstwxy])\s*// ){
 	    my $h = substr( $cmd, 0, 1 );
- 	    Warn( "unknown command `$h'", $fl );
+ 	    Warn( "unknown command '$h'", $fl );
 	    $error++;
 	    next;
 	}
@@ -1398,7 +1398,7 @@ sub Parse(){
 		$write = $1 if $cmd =~ s/w\s*(.*)$//;
   	        ### $nmatch =~ s/^(\d)\1*$/$1/; ### may be dangerous?
 		if( $global && length( $nmatch ) || length( $nmatch ) > 1 ){
-		    Warn( "conflicting flags `$global$nmatch'", $fl );
+		    Warn( "conflicting flags '$global$nmatch'", $fl );
 		    $error++;
 		    next;
 		}
@@ -1436,24 +1436,24 @@ sub Parse(){
 	    }
 	    my $d = substr( $cmd, 0, 1 ); $cmd = substr( $cmd, 1 );
 	    if( $d eq '\\' ){
-		Warn( "`\\' not valid as delimiter in `y' command", $fl );
+		Warn( "`\\' not valid as delimiter in 'y' command", $fl );
 		$error++;
 		next;
 	    }
 	    my $fr = stripTrans( $d, \$cmd );
 	    if( ! defined( $fr ) || ! length( $cmd ) ){
-		Warn( "malformed `y' command argument", $fl );
+		Warn( "malformed 'y' command argument", $fl );
 		$error++;
 		next;
 	    }
 	    my $to = stripTrans( $d, \$cmd );
 	    if( ! defined( $to ) ){
-		Warn( "malformed `y' command argument", $fl );
+		Warn( "malformed 'y' command argument", $fl );
 		$error++;
 		next;
 	    }
 	    if( length($fr) != length($to) ){
-		Warn( "string lengths in `y' command differ", $fl );
+		Warn( "string lengths in 'y' command differ", $fl );
 		$error++;
 		next;
 	    }
@@ -1486,14 +1486,14 @@ sub Parse(){
 
     while( @BlockStack ){
 	my $bl = pop( @BlockStack );
-	Warn( "start of unterminated `{'", $bl );
+	Warn( "start of unterminated '{'", $bl );
         $error++;
     }
 
     for my $lab ( keys( %Label ) ){
 	if( ! exists( $Label{$lab}{defined} ) ){
 	    for my $used ( @{$Label{$lab}{used}} ){
- 	        Warn( "undefined label `$lab'", $used );
+ 	        Warn( "undefined label '$lab'", $used );
 	        $error++;
 	    }
 	}
@@ -1570,7 +1570,7 @@ while( @ARGV && $ARGV[0] =~ /^-(.)(.*)$/ ){
     } elsif( $opt eq 'a' ){
 	$doOpenWrite = 0;
     } else {
-        Warn( "illegal option `$opt'" );
+        Warn( "illegal option '$opt'" );
         usage();
         exit( 1 );
     }
@@ -1873,27 +1873,27 @@ See L<"Additional Atoms">.
 
 =over 4
 
-=item ambiguous translation for character `%s' in `y' command
+=item ambiguous translation for character '%s' in 'y' command
 
 The indicated character appears twice, with different translations.
 
-=item `[' cannot be last in pattern
+=item '[' cannot be last in pattern
 
-A `[' in a BRE indicates the beginning of a I<bracket expression>.
+A '[' in a BRE indicates the beginning of a I<bracket expression>.
 
-=item `\' cannot be last in pattern
+=item '\' cannot be last in pattern
 
-A `\' in a BRE is used to make the subsequent character literal.
+A '\' in a BRE is used to make the subsequent character literal.
 
-=item `\' cannot be last in substitution
+=item '\' cannot be last in substitution
 
-A `\' in a substitution string is used to make the subsequent character literal.
+A '\' in a substitution string is used to make the subsequent character literal.
 
-=item conflicting flags `%s'
+=item conflicting flags '%s'
 
-In an B<s> command, either the `g' flag and an n-th occurrence flag, or
+In an B<s> command, either the 'g' flag and an n-th occurrence flag, or
 multiple n-th occurrence flags are specified. Note that only the digits
-`1' through `9' are permitted.
+^'1' through '9' are permitted.
 
 =item duplicate label %s (first defined at %s)
 
@@ -1903,20 +1903,20 @@ The command has more than the permitted number of addresses.
 
 =item extra characters after command (%s)
 
-=item illegal option `%s'
+=item illegal option '%s'
 
 =item improper delimiter in s command
 
-The BRE and substitution may not be delimited with `\' or newline.
+The BRE and substitution may not be delimited with '\' or newline.
 
-=item invalid address after `,'
+=item invalid address after ','
 
 =item invalid backreference (%s)
 
 The specified backreference number exceeds the number of backreferences
 in the BRE.
 
-=item invalid repeat clause `\{%s\}'
+=item invalid repeat clause '\{%s\}'
 
 The repeat clause does not contain a valid integer value, or pair of
 values.
@@ -1929,34 +1929,34 @@ values.
 
 =item malformed substitution expression
 
-=item malformed `y' command argument
+=item malformed 'y' command argument
 
 The first or second string of a B<y> command  is syntactically incorrect.
 
-=item maximum less than minimum in `\{%s\}'
+=item maximum less than minimum in '\{%s\}'
 
 =item no script command given
 
 There must be at least one B<-e> or one B<-f> option specifying a
 script or script file.
 
-=item `\' not valid as delimiter in `y' command
+=item '\' not valid as delimiter in 'y' command
 
 =item option -e requires an argument
 
 =item option -f requires an argument
 
-=item `s' command requires argument
+=item 's' command requires argument
 
-=item start of unterminated `{'
+=item start of unterminated '{'
 
-=item string lengths in `y' command differ
+=item string lengths in 'y' command differ
 
 The translation table strings in a B<y> command must have equal lengths.
 
-=item undefined label `%s'
+=item undefined label '%s'
 
-=item unexpected `}'
+=item unexpected '}'
 
 A B<}> command without a preceding B<{> command was encountered.
 
@@ -1965,23 +1965,23 @@ A B<}> command without a preceding B<{> command was encountered.
 The end of the script was reached although a text line after a
 B<a>, B<c> or B<i> command indicated another line.
 
-=item unknown command `%s'
+=item unknown command '%s'
 
-=item unterminated `['
+=item unterminated '['
 
 A BRE contains an unterminated bracket expression.
 
-=item unterminated `\('
+=item unterminated '\('
 
 A BRE contains an unterminated backreference.
 
-=item `\{' without closing `\}'
+=item '\{' without closing '\}'
 
 A BRE contains an unterminated bounds specification.
 
-=item `\)' without preceding `\('
+=item '\)' without preceding '\('
 
-=item `y' command requires argument
+=item 'y' command requires argument
 
 =back
 
@@ -2019,12 +2019,12 @@ perl(1), re_format(7)
 
 =head1 BUGS
 
-The B<l> command will show escape characters (ESC) as `C<\e>', but
+The B<l> command will show escape characters (ESC) as 'C<\e>', but
 a vertical tab (VT) in octal.
 
 Trailing spaces are truncated from labels in B<:>, B<t> and B<b> commands.
 
-The meaning of an empty regular expression (`C<//>'), as defined by B<sed>,
+The meaning of an empty regular expression ('C<//>'), as defined by B<sed>,
 is "the last pattern used, at run time". This deviates from the Perl
 interpretation, which will re-use the "last last successfully executed
 regular expression". Since keeping track of pattern usage would create
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0020-RT-36079-Increment-VERSION-number-so-that-t-porting-.patch
From ec997fb02ba4844a98cb51820004ca34385e89d9 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sun, 20 Nov 2011 09:54:57 -0500
Subject: [PATCH 20/23] [RT #36079] Increment $VERSION number so that t/porting/cmp_version.t passes.

---
 dist/Cwd/Cwd.pm                                    |    2 +-
 dist/Dumpvalue/lib/Dumpvalue.pm                    |    2 +-
 .../lib/ExtUtils/CBuilder/Platform/os2.pm          |    2 +-
 dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm      |    2 +-
 .../lib/ExtUtils/ParseXS/Utilities.pm              |    2 +-
 dist/IO/lib/IO/Dir.pm                              |    2 +-
 dist/Pod-Perldoc/lib/Pod/Perldoc.pm                |    2 +-
 dist/if/if.pm                                      |    2 +-
 lib/DB.pm                                          |    2 +-
 lib/File/Basename.pm                               |    2 +-
 lib/Getopt/Std.pm                                  |    2 +-
 lib/overload.pm                                    |    2 +-
 lib/sigtrap.pm                                     |    2 +-
 13 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/dist/Cwd/Cwd.pm b/dist/Cwd/Cwd.pm
index 6111179..3ec9ffa 100644
--- a/dist/Cwd/Cwd.pm
+++ b/dist/Cwd/Cwd.pm
@@ -171,7 +171,7 @@ use strict;
 use Exporter;
 use vars qw(@ISA @EXPORT @EXPORT_OK $VERSION);
 
-$VERSION = '3.37';
+$VERSION = '3.38';
 my $xs_version = $VERSION;
 $VERSION = eval $VERSION;
 
diff --git a/dist/Dumpvalue/lib/Dumpvalue.pm b/dist/Dumpvalue/lib/Dumpvalue.pm
index f5c39ff..ca40548 100644
--- a/dist/Dumpvalue/lib/Dumpvalue.pm
+++ b/dist/Dumpvalue/lib/Dumpvalue.pm
@@ -1,7 +1,7 @@
 use 5.006_001;			# for (defined ref) and $#$v and our
 package Dumpvalue;
 use strict;
-our $VERSION = '1.16';
+our $VERSION = '1.17';
 our(%address, $stab, @stab, %stab, %subs);
 
 # documentation nits, handle complex data structures better by chromatic
diff --git a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/os2.pm b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/os2.pm
index 6dc932c..e24cb2d 100644
--- a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/os2.pm
+++ b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/os2.pm
@@ -4,7 +4,7 @@ use strict;
 use ExtUtils::CBuilder::Platform::Unix;
 
 use vars qw($VERSION @ISA);
-$VERSION = '0.280203';
+$VERSION = '0.280204';
 @ISA = qw(ExtUtils::CBuilder::Platform::Unix);
 
 sub need_prelink { 1 }
diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm
index d743097..2c0af41 100644
--- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm
+++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm
@@ -11,7 +11,7 @@ use Symbol;
 
 our $VERSION;
 BEGIN {
-  $VERSION = '3.05';
+  $VERSION = '3.06';
 }
 use ExtUtils::ParseXS::Constants $VERSION;
 use ExtUtils::ParseXS::CountLines $VERSION;
diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm
index 2a520d2..19bf9bd 100644
--- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm
+++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm
@@ -6,7 +6,7 @@ use File::Spec;
 use lib qw( lib );
 use ExtUtils::ParseXS::Constants ();
 
-our $VERSION = '3.05';
+our $VERSION = '3.06';
 
 our (@ISA, @EXPORT_OK);
 @ISA = qw(Exporter);
diff --git a/dist/IO/lib/IO/Dir.pm b/dist/IO/lib/IO/Dir.pm
index 3486532..da2df8e 100644
--- a/dist/IO/lib/IO/Dir.pm
+++ b/dist/IO/lib/IO/Dir.pm
@@ -19,7 +19,7 @@ use File::stat;
 use File::Spec;
 
 @ISA = qw(Tie::Hash Exporter);
-$VERSION = "1.08";
+$VERSION = "1.09";
 $VERSION = eval $VERSION;
 @EXPORT_OK = qw(DIR_UNLINK);
 
diff --git a/dist/Pod-Perldoc/lib/Pod/Perldoc.pm b/dist/Pod-Perldoc/lib/Pod/Perldoc.pm
index 8503a66..90aaff2 100644
--- a/dist/Pod-Perldoc/lib/Pod/Perldoc.pm
+++ b/dist/Pod-Perldoc/lib/Pod/Perldoc.pm
@@ -12,7 +12,7 @@ use File::Spec::Functions qw(catfile catdir splitdir);
 use vars qw($VERSION @Pagers $Bindir $Pod2man
   $Temp_Files_Created $Temp_File_Lifetime
 );
-$VERSION = '3.15_07';
+$VERSION = '3.15_08';
 #..........................................................................
 
 BEGIN {  # Make a DEBUG constant very first thing...
diff --git a/dist/if/if.pm b/dist/if/if.pm
index c04ac6b..1fb5f3d 100644
--- a/dist/if/if.pm
+++ b/dist/if/if.pm
@@ -1,6 +1,6 @@
 package if;
 
-$VERSION = '0.0601';
+$VERSION = '0.0602';
 
 sub work {
   my $method = shift() ? 'import' : 'unimport';
diff --git a/lib/DB.pm b/lib/DB.pm
index 7048354..03f2b21 100644
--- a/lib/DB.pm
+++ b/lib/DB.pm
@@ -41,7 +41,7 @@ BEGIN {
   $DB::subname = '';    # currently executing sub (fullly qualified name)
   $DB::lineno = '';     # current line number
 
-  $DB::VERSION = $DB::VERSION = '1.03';
+  $DB::VERSION = $DB::VERSION = '1.04';
 
   # initialize private globals to avoid warnings
 
diff --git a/lib/File/Basename.pm b/lib/File/Basename.pm
index fb72a0d..ad98d24 100644
--- a/lib/File/Basename.pm
+++ b/lib/File/Basename.pm
@@ -54,7 +54,7 @@ our(@ISA, @EXPORT, $VERSION, $Fileparse_fstype, $Fileparse_igncase);
 require Exporter;
 @ISA = qw(Exporter);
 @EXPORT = qw(fileparse fileparse_set_fstype basename dirname);
-$VERSION = "2.83";
+$VERSION = "2.84";
 
 fileparse_set_fstype($^O);
 
diff --git a/lib/Getopt/Std.pm b/lib/Getopt/Std.pm
index 920b5b4..d4ce9a3 100644
--- a/lib/Getopt/Std.pm
+++ b/lib/Getopt/Std.pm
@@ -72,7 +72,7 @@ and version_mess() with the switches string as an argument.
 
 @ISA = qw(Exporter);
 @EXPORT = qw(getopt getopts);
-$VERSION = '1.06';
+$VERSION = '1.07';
 # uncomment the next line to disable 1.03-backward compatibility paranoia
 # $STANDARD_HELP_VERSION = 1;
 
diff --git a/lib/overload.pm b/lib/overload.pm
index 006c4e2..b3eac98 100644
--- a/lib/overload.pm
+++ b/lib/overload.pm
@@ -1,6 +1,6 @@
 package overload;
 
-our $VERSION = '1.15';
+our $VERSION = '1.16';
 
 sub nil {}
 
diff --git a/lib/sigtrap.pm b/lib/sigtrap.pm
index 59c15b9..025845e 100644
--- a/lib/sigtrap.pm
+++ b/lib/sigtrap.pm
@@ -8,7 +8,7 @@ sigtrap - Perl pragma to enable simple signal handling
 
 use Carp;
 
-$VERSION = 1.05;
+$VERSION = 1.06;
 $Verbose ||= 0;
 
 sub import {
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0014-RT-36079-Convert-to.patch
From e37036cc1918436d91500ea6224e062cf00aa905 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 20:15:33 -0500
Subject: [PATCH 14/23] [RT #36079] Convert ` to '.

---
 t/op/lex_assign.t |    2 +-
 t/op/magic.t      |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/t/op/lex_assign.t b/t/op/lex_assign.t
index 38f11cc..330bf4e 100644
--- a/t/op/lex_assign.t
+++ b/t/op/lex_assign.t
@@ -128,7 +128,7 @@ for (@INPUT) {
   \$a = $op;
   \$b = $expectop;
   if (\$a ne \$b) {
-    print "# \$comment: got `\$a', expected `\$b'\n";
+    print "# \$comment: got '\$a', expected '\$b'\n";
     print "\$skip " if \$a ne \$b or \$skip eq 'skip';
   }
   print "ok \$ord\\n";
diff --git a/t/op/magic.t b/t/op/magic.t
index d123670..d8d5063 100644
--- a/t/op/magic.t
+++ b/t/op/magic.t
@@ -367,7 +367,7 @@ EOP
 
         no warnings;
         my $res = `$cmd`;
-        skip "Couldn't shell out to `$cmd', returned code $?", 2 if $?;
+        skip "Couldn't shell out to '$cmd', returned code $?", 2 if $?;
         return $res;
     };
 
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0004-RT-36079-Convert-to.patch
From 8fbe73b317b786125144fc1772926ad73964614b Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 19:23:00 -0500
Subject: [PATCH 04/23] [RT #36079] Convert ` to '.

---
 dist/if/t/if.t                |    2 +-
 ext/File-Glob/Glob.pm         |    2 +-
 ext/File-Glob/bsd_glob.c      |    2 +-
 ext/File-Glob/bsd_glob.h      |    2 +-
 ext/SDBM_File/sdbm/README     |   18 +++++++++---------
 ext/SDBM_File/sdbm/readme.ms  |   18 +++++++++---------
 ext/Socket/Socket.xs          |    2 +-
 ext/Sys-Hostname/t/Hostname.t |    2 +-
 8 files changed, 24 insertions(+), 24 deletions(-)

diff --git a/dist/if/t/if.t b/dist/if/t/if.t
index 25bf09a..e55bca3 100644
--- a/dist/if/t/if.t
+++ b/dist/if/t/if.t
@@ -26,7 +26,7 @@ is( eval "use if ($v_plus > \$]), strict => 'refs'; \${'f'} = 12", undef,
     '"use if" with a true condition and a pragma');
 like( $@, qr/while "strict refs" in use/, 'expected error message'),
 
-# Old version had problems with the module name `open', which is a keyword too
+# Old version had problems with the module name 'open', which is a keyword too
 # Use 'open' =>, since pre-5.6.0 could interpret differently
 is( (eval "use if ($v_plus > \$]), 'open' => IN => ':crlf'; 12" || 0), 12,
     '"use if" with open');
diff --git a/ext/File-Glob/Glob.pm b/ext/File-Glob/Glob.pm
index 842100a..a32d342 100644
--- a/ext/File-Glob/Glob.pm
+++ b/ext/File-Glob/Glob.pm
@@ -359,7 +359,7 @@ following copyright:
        may be used to endorse or promote products derived from this software
        without specific prior written permission.
 
-    THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+    THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ''AS IS'' AND
     ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
diff --git a/ext/File-Glob/bsd_glob.c b/ext/File-Glob/bsd_glob.c
index 89d51af..89bb726 100644
--- a/ext/File-Glob/bsd_glob.c
+++ b/ext/File-Glob/bsd_glob.c
@@ -17,7 +17,7 @@
  *    may be used to endorse or promote products derived from this software
  *    without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ''AS IS'' AND
  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
diff --git a/ext/File-Glob/bsd_glob.h b/ext/File-Glob/bsd_glob.h
index af92c04..7e1b00f 100644
--- a/ext/File-Glob/bsd_glob.h
+++ b/ext/File-Glob/bsd_glob.h
@@ -17,7 +17,7 @@
  *    may be used to endorse or promote products derived from this software
  *    without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ''AS IS'' AND
  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
diff --git a/ext/SDBM_File/sdbm/README b/ext/SDBM_File/sdbm/README
index cd7312c..a18ac6a 100644
--- a/ext/SDBM_File/sdbm/README
+++ b/ext/SDBM_File/sdbm/README
@@ -32,7 +32,7 @@ derived  from  any  licensed,  proprietary  or   copyrighted
 software.
 
      The sdbm implementation is based on  a  1978  algorithm
-[Lar78] by P.-A. (Paul) Larson known as ``Dynamic Hashing''.
+[Lar78] by P.-A. (Paul) Larson known as ''Dynamic Hashing''.
 In the course of searching for a substitute for ndbm, I pro-
 totyped  three different external-hashing algorithms [Lar78,
 Fag79, Lit80] and ultimately chose Larson's algorithm  as  a
@@ -70,7 +70,7 @@ _________________________
                            - 2 -
 
 
-store operation will not ``wander away'' trying to split its
+store operation will not ''wander away'' trying to split its
 data  pages  to insert a datum that cannot (due to elaborate
 worst-case situations) be inserted. (It will  fail  after  a
 pre-defined number of attempts.)
@@ -298,30 +298,30 @@ References
 
 
 [Lar78]
-    P.-A. Larson, ``Dynamic Hashing'', BIT, vol.   18,   pp.
+    P.-A. Larson, ''Dynamic Hashing'', BIT, vol.   18,   pp.
     184-201, 1978.
 
 [Tho90]
     Ken Thompson, private communication, Nov. 1990
 
 [Lit80]
-    W. Litwin, `` Linear Hashing: A new tool  for  file  and
+    W. Litwin, '' Linear Hashing: A new tool  for  file  and
     table addressing'', Proceedings of the 6th Conference on
     Very Large  Dabatases  (Montreal), pp.   212-223,   Very
     Large Database Foundation, Saratoga, Calif., 1980.
 
 [Fag79]
     R. Fagin, J.  Nievergelt,  N.  Pippinger,  and   H.   R.
-    Strong,  ``Extendible Hashing - A Fast Access Method for
+    Strong,  ''Extendible Hashing - A Fast Access Method for
     Dynamic Files'', ACM  Trans.  Database  Syst.,  vol.  4,
     no.3, pp. 315-344, Sept. 1979.
 
 [Wal84]
-    Rich Wales, ``Discussion of "dbm"  data  base  system'',
+    Rich Wales, ''Discussion of "dbm"  data  base  system'',
     USENET newsgroup unix.wizards, Jan. 1984.
 
 [Tor87]
-    Chris Torek,  ``Re:   dbm.a   and   ndbm.a   archives'',
+    Chris Torek,  ''Re:   dbm.a   and   ndbm.a   archives'',
 
 
 
@@ -337,12 +337,12 @@ References
     USENET newsgroup comp.unix, 1987.
 
 [Mar79]
-    G. N. Martin, ``Spiral Storage: Incrementally   Augment-
+    G. N. Martin, ''Spiral Storage: Incrementally   Augment-
     able   Hash  Addressed  Storage'', Technical Report #27,
     University of Varwick, Coventry, U.K., 1979.
 
 [Enb88]
-    R.  J.  Enbody  and  H.   C.   Du,   ``Dynamic   Hashing
+    R.  J.  Enbody  and  H.   C.   Du,   ''Dynamic   Hashing
     Schemes'',ACM  Computing  Surveys,  vol.  20, no. 2, pp.
     85-113, June 1988.
 
diff --git a/ext/SDBM_File/sdbm/readme.ms b/ext/SDBM_File/sdbm/readme.ms
index 01ca17c..da344ff 100644
--- a/ext/SDBM_File/sdbm/readme.ms
+++ b/ext/SDBM_File/sdbm/readme.ms
@@ -70,7 +70,7 @@ The \fIsdbm\fP library is not derived from any licensed, proprietary or
 copyrighted software.
 .PP
 The \fIsdbm\fP implementation is based on a 1978 algorithm
-[Lar78] by P.-A. (Paul) Larson known as ``Dynamic Hashing''.
+[Lar78] by P.-A. (Paul) Larson known as ''Dynamic Hashing''.
 In the course of searching for a substitute for \fIndbm\fP, I
 prototyped three different external-hashing algorithms [Lar78, Fag79, Lit80]
 and ultimately chose Larson's algorithm as a basis of the \fIsdbm\fP
@@ -94,7 +94,7 @@ smaller. The \fIsdbm\fP implementation is also faster than \fIndbm\fP
 in database creation.
 Unlike the \fIndbm\fP, the \fIsdbm\fP
 .CW store
-operation will not ``wander away'' trying to split its
+operation will not ''wander away'' trying to split its
 data pages to insert a datum that \fIcannot\fP (due to elaborate worst-case
 situations) be inserted. (It will fail after a pre-defined number of attempts.)
 .SH
@@ -323,31 +323,31 @@ References
 .LP
 .IP [Lar78] 4m
 P.-A. Larson,
-``Dynamic Hashing'', \fIBIT\fP, vol.  18,  pp. 184-201, 1978.
+''Dynamic Hashing'', \fIBIT\fP, vol.  18,  pp. 184-201, 1978.
 .IP [Tho90] 4m
 Ken Thompson, \fIprivate communication\fP, Nov. 1990
 .IP [Lit80] 4m
 W. Litwin,
-`` Linear Hashing: A new tool  for  file  and table addressing'',
+'' Linear Hashing: A new tool  for  file  and table addressing'',
 \fIProceedings of the 6th Conference on Very Large  Dabatases  (Montreal)\fP,
 pp.  212-223,  Very Large Database Foundation, Saratoga, Calif., 1980.
 .IP [Fag79] 4m
 R. Fagin, J.  Nievergelt,  N.  Pippinger,  and  H.  R. Strong,
-``Extendible Hashing - A Fast Access Method for Dynamic Files'',
+''Extendible Hashing - A Fast Access Method for Dynamic Files'',
 \fIACM Trans. Database Syst.\fP, vol. 4,  no.3, pp. 315-344, Sept. 1979.
 .IP [Wal84] 4m
 Rich Wales,
-``Discussion of "dbm" data base system'', \fIUSENET newsgroup unix.wizards\fP,
+''Discussion of "dbm" data base system'', \fIUSENET newsgroup unix.wizards\fP,
 Jan. 1984.
 .IP [Tor87] 4m
 Chris Torek,
-``Re:  dbm.a  and  ndbm.a  archives'', \fIUSENET newsgroup comp.unix\fP,
+''Re:  dbm.a  and  ndbm.a  archives'', \fIUSENET newsgroup comp.unix\fP,
 1987.
 .IP [Mar79] 4m
 G. N. Martin,
-``Spiral Storage: Incrementally  Augmentable  Hash  Addressed  Storage'',
+''Spiral Storage: Incrementally  Augmentable  Hash  Addressed  Storage'',
 \fITechnical Report #27\fP, University of Varwick, Coventry, U.K., 1979.
 .IP [Enb88] 4m
 R. J. Enbody and H. C. Du,
-``Dynamic Hashing  Schemes'',\fIACM Computing Surveys\fP,
+''Dynamic Hashing  Schemes'',\fIACM Computing Surveys\fP,
 vol. 20, no. 2, pp. 85-113, June 1988.
diff --git a/ext/Socket/Socket.xs b/ext/Socket/Socket.xs
index 2c67c3a..6f442bc 100644
--- a/ext/Socket/Socket.xs
+++ b/ext/Socket/Socket.xs
@@ -96,7 +96,7 @@ my_inet_aton(register const char *cp, struct in_addr *addr)
 		return 0;
 	for (;;) {
 		/*
-		 * Collect number up to ``.''.
+		 * Collect number up to ''.''.
 		 * Values are specified as for C:
 		 * 0x=hex, 0=octal, other=decimal.
 		 */
diff --git a/ext/Sys-Hostname/t/Hostname.t b/ext/Sys-Hostname/t/Hostname.t
index 8e012b4..40352ba 100644
--- a/ext/Sys-Hostname/t/Hostname.t
+++ b/ext/Sys-Hostname/t/Hostname.t
@@ -18,6 +18,6 @@ if ($@) {
     print "1..0\n" if $@ =~ /Cannot get host name/;
 } else {
     print "1..1\n";
-    print "# \$host = `$host'\n";
+    print "# \$host = '$host'\n";
     print "ok 1\n";
 }
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0003-RT-36079-Convert-to.patch
From c93a08e34dc5822ab9cd2060f88135f771d60748 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 19:18:10 -0500
Subject: [PATCH 03/23] [RT #36079] Convert ` to '.

---
 .../lib/ExtUtils/ParseXS/Utilities.pm              |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm
index e4a83c4..2a520d2 100644
--- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm
+++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm
@@ -667,7 +667,7 @@ sub analyze_preprocessor_statements {
     push(@{ $self->{XSStack} }, {type => 'if'});
   }
   else {
-    $self->death("Error: `$statement' with no matching `if'")
+    $self->death("Error: '$statement' with no matching 'if'")
       if $self->{XSStack}->[-1]{type} ne 'if';
     if ($self->{XSStack}->[-1]{varname}) {
       push(@{ $self->{InitFileCode} }, "#endif\n");
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0001-RT-36079-Convert-to.patch
From d51a90f1d666184d4964dd458fb8165940a8189c Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 19:00:59 -0500
Subject: [PATCH 01/23] [RT #36079] Convert ` to '.

---
 Copying                   |   10 ++++----
 dist/B-Deparse/Deparse.pm |   58 ++++++++++++++++++++++----------------------
 2 files changed, 34 insertions(+), 34 deletions(-)

diff --git a/Copying b/Copying
index 43cd72c..77d83df 100644
--- a/Copying
+++ b/Copying
@@ -224,13 +224,13 @@ If the program is interactive, make it output a short notice like this
 when it starts in an interactive mode:
 
     Gnomovision version 69, Copyright (C) 19xx name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type 'show w'.
     This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
+    under certain conditions; type 'show c' for details.
 
-The hypothetical commands `show w' and `show c' should show the
+The hypothetical commands 'show w' and 'show c' should show the
 appropriate parts of the General Public License.  Of course, the
-commands you use may be called something other than `show w' and `show
+commands you use may be called something other than 'show w' and 'show
 c'; they could even be mouse-clicks or menu items--whatever suits your
 program.
 
@@ -239,7 +239,7 @@ school, if any, to sign a "copyright disclaimer" for the program, if
 necessary.  Here a sample; alter the names:
 
   Yoyodyne, Inc., hereby disclaims all copyright interest in the
-  program `Gnomovision' (a program to direct compilers to make passes
+  program 'Gnomovision' (a program to direct compilers to make passes
   at assemblers) written by James Hacker.
 
   <signature of Ty Coon>, 1 April 1989
diff --git a/dist/B-Deparse/Deparse.pm b/dist/B-Deparse/Deparse.pm
index 428466b..116562b 100644
--- a/dist/B-Deparse/Deparse.pm
+++ b/dist/B-Deparse/Deparse.pm
@@ -58,10 +58,10 @@ BEGIN {
 # - fixed reference constants (\"str")
 # - handle empty programs gracefully
 # - handle infinite loops (for (;;) {}, while (1) {})
-# - differentiate between `for my $x ...' and `my $x; for $x ...'
+# - differentiate between 'for my $x ...' and 'my $x; for $x ...'
 # - various minor cleanups
 # - moved globals into an object
-# - added `-u', like B::C
+# - added '-u', like B::C
 # - package declarations using cop_stash
 # - subs, formats and code sorted by cop_seq
 # Changes between 0.51 and 0.52:
@@ -69,10 +69,10 @@ BEGIN {
 # - added documentation
 # Changes between 0.52 and 0.53:
 # - many changes adding precedence contexts and associativity
-# - added `-p' and `-s' output style options
+# - added '-p' and '-s' output style options
 # - various other minor fixes
 # Changes between 0.53 and 0.54:
-# - added support for new `for (1..100)' optimization,
+# - added support for new 'for (1..100)' optimization,
 #   thanks to Gisle Aas
 # Changes between 0.54 and 0.55:
 # - added support for new qr// construct
@@ -81,16 +81,16 @@ BEGIN {
 # - tested on base/*.t, cmd/*.t, comp/*.t, io/*.t
 # - fixed $# on non-lexicals broken in last big rewrite
 # - added temporary fix for change in opcode of OP_STRINGIFY
-# - fixed problem in 0.54's for() patch in `for (@ary)'
+# - fixed problem in 0.54's for() patch in 'for (@ary)'
 # - fixed precedence in conditional of ?:
-# - tweaked list paren elimination in `my($x) = @_'
+# - tweaked list paren elimination in 'my($x) = @_'
 # - made continue-block detection trickier wrt. null ops
 # - fixed various prototype problems in pp_entersub
 # - added support for sub prototypes that never get GVs
 # - added unquoting for special filehandle first arg in truncate
-# - print doubled rv2gv (a bug) as `*{*GV}' instead of illegal `**GV'
+# - print doubled rv2gv (a bug) as '*{*GV}' instead of illegal '**GV'
 # - added semicolons at the ends of blocks
-# - added -l `#line' declaration option -- fixes cmd/subval.t 27,28
+# - added -l '#line' declaration option -- fixes cmd/subval.t 27,28
 # Changes between 0.56 and 0.561:
 # - fixed multiply-declared my var in pp_truncate (thanks to Sarathy)
 # - used new B.pm symbolic constants (done by Nick Ing-Simmons)
@@ -103,7 +103,7 @@ BEGIN {
 # Changes after 0.57:
 # - added parens in \&foo (patch by Albert Dvornik)
 # Changes between 0.57 and 0.58:
-# - fixed `0' statements that weren't being printed
+# - fixed '0' statements that weren't being printed
 # - added methods for use from other programs
 #   (based on patches from James Duncan and Hugo van der Sanden)
 # - added -si and -sT to control indenting (also based on a patch from Hugo)
@@ -115,7 +115,7 @@ BEGIN {
 # Changes between 0.58 and 0.59
 # - added support for Chip's OP_METHOD_NAMED
 # - added support for Ilya's OPpTARGET_MY optimization
-# - elided arrows before `()' subscripts when possible
+# - elided arrows before '()' subscripts when possible
 # Changes between 0.59 and 0.60
 # - support for method attributes was added
 # - some warnings fixed
@@ -165,7 +165,7 @@ BEGIN {
 # - configurable syntax highlighting: ANSI color, HTML, TeX, etc.
 # - more style options: brace style, hex vs. octal, quotes, ...
 # - print big ints as hex/octal instead of decimal (heuristic?)
-# - handle `my $x if 0'?
+# - handle 'my $x if 0'?
 # - version using op_next instead of op_first/sibling?
 # - avoid string copies (pass arrays, one big join?)
 # - here-docs?
@@ -263,7 +263,7 @@ BEGIN {
 # parens: -p
 # linenums: -l
 # unquote: -q
-# cuddle: ` ' or `\n', depending on -sC
+# cuddle: ' ' or '\n', depending on -sC
 # indent_size: -si
 # use_tabs: -sT
 # ex_const: -sv
@@ -277,7 +277,7 @@ BEGIN {
 # they're inside an expression or at statement level, etc.  (see
 # chart below). When ops with children call deparse on them, they pass
 # along their precedence. Fractional values are used to implement
-# associativity (`($x + $y) + $z' => `$x + $y + $y') and related
+# associativity ('($x + $y) + $z' => '$x + $y + $y') and related
 # parentheses hacks. The major disadvantage of this scheme is that
 # it doesn't know about right sides and left sides, so say if you
 # assign a listop to a variable, it can't tell it's allowed to leave
@@ -317,7 +317,7 @@ BEGIN {
 # \cS - steal parens (see maybe_parens_unop)
 # \n - newline and indent
 # \t - increase indent
-# \b - decrease indent (`outdent')
+# \b - decrease indent ('outdent')
 # \f - flush left (no indent)
 # \cK - kill following semicolon, if any
 
@@ -964,7 +964,7 @@ sub is_state {
     return $name eq "nextstate" || $name eq "dbstate" || $name eq "setstate";
 }
 
-sub is_miniwhile { # check for one-line loop (`foo() while $y--')
+sub is_miniwhile { # check for one-line loop ('foo() while $y--')
     my $op = shift;
     return (!null($op) and null($op->sibling)
 	    and $op->name eq "null" and class($op) eq "UNOP"
@@ -1024,7 +1024,7 @@ sub maybe_parens {
     }
 }
 
-# same as above, but get around the `if it looks like a function' rule
+# same as above, but get around the 'if it looks like a function' rule
 sub maybe_parens_unop {
     my $self = shift;
     my($name, $kid, $cx) = @_;
@@ -1045,7 +1045,7 @@ sub maybe_parens_unop {
 	    return $name . substr($kid, 1);
 	} elsif (substr($kid, 0, 1) eq "(") {
 	    # avoid looks-like-a-function trap with extra parens
-	    # (`+' can lead to ambiguities)
+	    # ('+' can lead to ambiguities)
 	    return "$name(" . $kid  . ")";
 	} else {
 	    return "$name $kid";
@@ -2024,7 +2024,7 @@ sub ftst {
     my $self = shift;
     my($op, $cx, $name) = @_;
     if (class($op) eq "UNOP") {
-	# Genuine `-X' filetests are exempt from the LLAFR, but not
+	# Genuine '-X' filetests are exempt from the LLAFR, but not
 	# l?stat(); for the sake of clarity, give'em all parens
 	return $self->maybe_parens_unop($name, $op->first, $cx);
     } elsif (class($op) =~ /^(SV|PAD)OP$/) {
@@ -2074,7 +2074,7 @@ sub assoc_class {
     my $op = shift;
     my $name = $op->name;
     if ($name eq "concat" and $op->first->name eq "concat") {
-	# avoid spurious `=' -- see comment in pp_concat
+	# avoid spurious '=' -- see comment in pp_concat
 	return "concat";
     }
     if ($name eq "null" and class($op) eq "UNOP"
@@ -2091,7 +2091,7 @@ sub assoc_class {
     return $name . ($op->flags & OPf_STACKED ? "=" : "");
 }
 
-# Left associative operators, like `+', for which
+# Left associative operators, like '+', for which
 # $a + $b + $c is equivalent to ($a + $b) + $c
 
 BEGIN {
@@ -2122,7 +2122,7 @@ sub deparse_binop_left {
     }
 }
 
-# Right associative operators, like `=', for which
+# Right associative operators, like '=', for which
 # $a = $b = $c is equivalent to $a = ($b = $c)
 
 BEGIN {
@@ -2229,9 +2229,9 @@ sub pp_smartmatch {
     }
 }
 
-# `.' is special because concats-of-concats are optimized to save copying
+# '.' is special because concats-of-concats are optimized to save copying
 # by making all but the first concat stacked. The effect is as if the
-# programmer had written `($a . $b) .= $c', except legal.
+# programmer had written '($a . $b) .= $c', except legal.
 sub pp_concat { maybe_targmy(@_, \&real_concat) }
 sub real_concat {
     my $self = shift;
@@ -2249,7 +2249,7 @@ sub real_concat {
     return $self->maybe_parens("$left .$eq $right", $cx, $prec);
 }
 
-# `x' is weird when the left arg is a list
+# 'x' is weird when the left arg is a list
 sub pp_repeat {
     my $self = shift;
     my($op, $cx) = @_;
@@ -3260,7 +3260,7 @@ sub _method {
 	# doesn't get flattened by the append_elem that adds the method,
 	# making a (object, arg1, arg2, ...) list where the object
 	# usually is. This can be distinguished from
-	# `($obj, $arg1, $arg2)->meth()' (which is legal if $arg2 is an
+	# '($obj, $arg1, $arg2)->meth()' (which is legal if $arg2 is an
 	# object) because in the later the list is in scalar context
 	# as the left side of -> always is, while in the former
 	# the list is in list context as method arguments always are.
@@ -3393,7 +3393,7 @@ sub check_proto {
 	    }
        }
     }
-    return "&" if $proto and !$doneok; # too few args and no `;'
+    return "&" if $proto and !$doneok; # too few args and no ';'
     return "&" if @args;               # too many args
     return ("", join ", ", @reals);
 }
@@ -3868,7 +3868,7 @@ sub pp_const {
     if ($op->private & OPpCONST_ARYBASE) {
         return '$[';
     }
-#    if ($op->private & OPpCONST_BARE) { # trouble with `=>' autoquoting
+#    if ($op->private & OPpCONST_BARE) { # trouble with '=>' autoquoting
 #	return $self->const_sv($op)->PV;
 #    }
     my $sv = $self->const_sv($op);
@@ -3913,7 +3913,7 @@ sub dq {
 sub pp_backtick {
     my $self = shift;
     my($op, $cx) = @_;
-    # skip pushmark if it exists (readpipe() vs ``)
+    # skip pushmark if it exists (readpipe() vs '`)
     my $child = $op->first->sibling->isa('B::NULL')
 	? $op->first : $op->first->sibling;
     if ($self->pure_string($child)) {
@@ -3945,7 +3945,7 @@ sub double_delim {
 	if (($succeed, $to) = balanced_delim($to) and $succeed) {
 	    return "$from$to";
 	} else {
-	    for $delim ('/', '"', '#') { # note no `'' -- s''' is special
+	    for $delim ('/', '"', '#') { # note no ''' -- s''' is special
 		return "$from$delim$to$delim" if index($to, $delim) == -1;
 	    }
 	    $to =~ s[/][\\/]g;
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0005-RT-36079-Convert-to.patch
From 6cba73703ffa71c919a8b51a5a305f91bf8b9414 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 19:28:08 -0500
Subject: [PATCH 05/23] [RT #36079] Convert ` to '.

---
 INSTALL           |    4 ++--
 generate_uudmap.c |    2 +-
 h2pl/tcbreak      |    2 +-
 h2pl/tcbreak2     |    2 +-
 installman        |    2 +-
 installperl       |    2 +-
 6 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/INSTALL b/INSTALL
index 2c2f89b..b58503b 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1430,7 +1430,7 @@ See also the L<"vsprintf"> item below.
 If you get error messages such as the following (the exact line
 numbers and function name may vary in different versions of perl):
 
-    util.c: In function `Perl_form':
+    util.c: In function 'Perl_form':
     util.c:1107: number of arguments doesn't match prototype
     proto.h:125: prototype declaration
 
@@ -2031,7 +2031,7 @@ pages, however.  You may need to be root to run B<make install>.  If you
 are not root, you must still have permission to install into the directories
 in question and you should ignore any messages about chown not working.
 
-If "make install" just says "`install' is up to date" or something
+If "make install" just says "'install' is up to date" or something
 similar, you may be on a case-insensitive filesystems such as Mac's HFS+,
 and you should say "make install-all".  (This confusion is brought to you
 by the Perl distribution having a file called INSTALL.)
diff --git a/generate_uudmap.c b/generate_uudmap.c
index b6307c0..36738eb 100644
--- a/generate_uudmap.c
+++ b/generate_uudmap.c
@@ -117,7 +117,7 @@ int main(int argc, char **argv) {
   for (i = 0; i < sizeof(PL_uuemap) - 1; ++i)
     PL_uudmap[(U8)PL_uuemap[i]] = (char)i;
   /*
-   * Because ' ' and '`' map to the same value,
+   * Because " " and "'" map to the same value,
    * we need to decode them both the same.
    */
   PL_uudmap[(U8)' '] = 0;
diff --git a/h2pl/tcbreak b/h2pl/tcbreak
index 2677cc9..aa6e33e 100644
--- a/h2pl/tcbreak
+++ b/h2pl/tcbreak
@@ -12,6 +12,6 @@ $c = getc;
 
 print "$c\n";
 
-printf "you gave me `%s', which is 0x%02x\n", $c, ord($c);
+printf "you gave me '%s', which is 0x%02x\n", $c, ord($c);
 
 &cooked;
diff --git a/h2pl/tcbreak2 b/h2pl/tcbreak2
index fcbf926..d9fd735 100644
--- a/h2pl/tcbreak2
+++ b/h2pl/tcbreak2
@@ -12,6 +12,6 @@ $c = getc;
 
 print "$c\n";
 
-printf "you gave me `%s', which is 0x%02x\n", $c, ord($c);
+printf "you gave me '%s', which is 0x%02x\n", $c, ord($c);
 
 &cooked;
diff --git a/installman b/installman
index 7665047..b5b2620 100755
--- a/installman
+++ b/installman
@@ -214,7 +214,7 @@ sub rename {
 	for ($i = 1; $i < 50; $i++) {
 	    last if CORE::rename($to, "$to.$i");
 	}
-	warn("Cannot rename to `$to.$i': $!"), return 0
+	warn("Cannot rename to '$to.$i': $!"), return 0
 	    if $i >= 50;	# Give up!
     }
     link($from,$to) || return 0;
diff --git a/installperl b/installperl
index 73448df..1903038 100755
--- a/installperl
+++ b/installperl
@@ -661,7 +661,7 @@ sub safe_rename {
 	for ($i = 1; $i < 50; $i++) {
 	    last if rename($to, "$to.$i");
 	}
-	warn("Cannot rename to `$to.$i': $!"), return 0
+	warn("Cannot rename to '$to.$i': $!"), return 0
 	   if $i >= 50;	# Give up!
     }
     link($from,$to) || return 0;
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0018-RT-36079-Due-to-test-failures-evert-conversion-from-.patch
From b0c32115c181e8ddaae23678cf2194073f9baf59 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 22:12:05 -0500
Subject: [PATCH 18/23] [RT #36079] Due to test failures, evert conversion from backtick to single quote.

---
 t/porting/diag.t |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/t/porting/diag.t b/t/porting/diag.t
index d899886..50aa996 100644
--- a/t/porting/diag.t
+++ b/t/porting/diag.t
@@ -384,10 +384,10 @@ Can't return array to lvalue scalar context
 Can't return a %s from lvalue subroutine
 Can't return hash to lvalue scalar context
 Can't spawn "%s": %s
-Can't %s script '%s' with ARGV[0] being '%s'
+Can't %s script `%s' with ARGV[0] being `%s'
 Can't %s "%s": %s
 Can't %s %s%s%s
-Can't %s '%s' with ARGV[0] being '%s' (looking for executables only, not found)
+Can't %s `%s' with ARGV[0] being `%s' (looking for executables only, not found)
 Can't take %s of %f
 Can't use '%c' after -mname
 Can't use string ("%s"%s) as a subroutine ref while "strict refs" in use
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0011-RT-36079-Convert-to.patch
From 6e62d7cf7333ad18daba976df089006beb353705 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 20:01:01 -0500
Subject: [PATCH 11/23] [RT #36079] Convert ` to '.

---
 Porting/Glossary |    2 +-
 README.os2       |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/Porting/Glossary b/Porting/Glossary
index 81c83a9..de81a00 100644
--- a/Porting/Glossary
+++ b/Porting/Glossary
@@ -4,7 +4,7 @@ This file is built by metaconfig.
 
 This file contains a description of all the shell variables whose value is
 determined by the Configure script.  Variables intended for use in C
-programs (e.g. I_UNISTD) are already described in config_h.SH.  [`configpm'
+programs (e.g. I_UNISTD) are already described in config_h.SH.  ['configpm'
 generates pod documentation for Config.pm from this file--please try to keep
 the formatting regular.]
 
diff --git a/README.os2 b/README.os2
index d973b82..73175b0 100644
--- a/README.os2
+++ b/README.os2
@@ -1461,7 +1461,7 @@ Here is the sample C file:
 
       if (_execname(buf, sizeof(buf) - 13) != 0)
           die_with("Can't find full path: ", strerror(errno), "", "");
-      /* XXXX Fill `me' with new value */
+      /* XXXX Fill 'me' with new value */
       l = strlen(buf);
       while (l && buf[l-1] != '/' && buf[l-1] != '\\')
           l--;
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0021-RT-36079-Convert-to.patch
From 2de6cda40d3459cc79faa0eb3968ff6a480635ce Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sun, 20 Nov 2011 09:55:28 -0500
Subject: [PATCH 21/23] [RT #36079] Convert ` to '.

---
 utils/h2ph.PL      |   14 +++++++-------
 utils/h2xs.PL      |    4 ++--
 utils/libnetcfg.PL |    8 ++++----
 utils/perlivp.PL   |   48 ++++++++++++++++++++++++------------------------
 4 files changed, 37 insertions(+), 37 deletions(-)

diff --git a/utils/h2ph.PL b/utils/h2ph.PL
index e0b5e3a..a2d737b 100644
--- a/utils/h2ph.PL
+++ b/utils/h2ph.PL
@@ -96,7 +96,7 @@ while (defined (my $file = next_file())) {
     $t = '';
     $tab = 0;
 
-    # $eval_index goes into ``#line'' directives, to help locate syntax errors:
+    # $eval_index goes into '#line' directives, to help locate syntax errors:
     $eval_index = 1;
 
     if ($file eq '-') {
@@ -154,7 +154,7 @@ while (defined (my $file = next_file())) {
 
 		    $new = 1 if $new eq '';
 
-		    # Shunt around such directives as `#define FOO FOO':
+		    # Shunt around such directives as '#define FOO FOO':
 		    next if $new =~ /^\s*&\Q$name\E\s*\z/;
 
 		    $new = reindent($new);
@@ -658,12 +658,12 @@ sub next_file
             if ($opt_r) {
                 expand_glob($file);
             } else {
-                print STDERR "Skipping directory `$file'\n";
+                print STDERR "Skipping directory '$file'\n";
             }
         } elsif ($opt_a) {
             return $file;
         } else {
-            print STDERR "Skipping `$file':  not a file or directory\n";
+            print STDERR "Skipping '$file':  not a file or directory\n";
         }
     }
 
@@ -843,7 +843,7 @@ sub _extract_cc_defines
     my $allsymbols  = join " ",
 	@Config{'ccsymbols', 'cppsymbols', 'cppccsymbols'};
 
-    # Split compiler pre-definitions into `key=value' pairs:
+    # Split compiler pre-definitions into 'key=value' pairs:
     while ($allsymbols =~ /([^\s]+)=((\\\s|[^\s])+)/g) {
 	$define{$1} = $2;
 	if ($opt_D) {
@@ -920,7 +920,7 @@ is not specified, then links are skipped over.
 
 =item -h
 
-Put ``hints'' in the .ph files which will help in locating problems with
+Put 'hints' in the .ph files which will help in locating problems with
 I<h2ph>.  In those cases when you B<require> a B<.ph> file containing syntax
 errors, instead of the cryptic
 
@@ -939,7 +939,7 @@ This is primarily used for debugging I<h2ph>.
 
 =item -Q
 
-``Quiet'' mode; don't print out the names of the files being converted.
+'Quiet' mode; don't print out the names of the files being converted.
 
 =back
 
diff --git a/utils/h2xs.PL b/utils/h2xs.PL
index 6239f8f..6c41ea9 100644
--- a/utils/h2xs.PL
+++ b/utils/h2xs.PL
@@ -2093,8 +2093,8 @@ my $tests = @const_names ? 2 : 1;
 open EX, ">$testfile" or die "Can't create $ext$modpname/$testfile: $!\n";
 
 print EX <<_END_;
-# Before `make install' is performed this script should be runnable with
-# `make test'. After `make install' it should work as `perl $modpname.t'
+# Before 'make install' is performed this script should be runnable with
+# 'make test'. After 'make install' it should work as 'perl $modpname.t'
 
 #########################
 
diff --git a/utils/libnetcfg.PL b/utils/libnetcfg.PL
index 1f47c24..c6908f8 100644
--- a/utils/libnetcfg.PL
+++ b/utils/libnetcfg.PL
@@ -218,7 +218,7 @@ sub get_hostname
    print <<"EDQ";
 
 *** ERROR:
-    Hostname `$host' does not seem to exist, please enter again
+    Hostname '$host' does not seem to exist, please enter again
     or a single space to clear any default
 
 EDQ
@@ -684,9 +684,9 @@ $cfg{'inet_domain'} = ($ans =~ /(\S+)/)[0];
 $msg = <<EDQ;
 
 If you specified some default hosts above, it is possible for me to
-do some basic tests when you run `make test'
+do some basic tests when you run 'make test'
 
-This will cause `make test' to be quite a bit slower and, if your
+This will cause 'make test' to be quite a bit slower and, if your
 internet connection is via dialup, will require you to be on-line
 unless the hosts are local.
 
@@ -714,7 +714,7 @@ print "\n";
 #---------------------------------------------------------------------------
 
 my $fh = IO::File->new($libnet_cfg_out, "w") or
-	die "Cannot create `$libnet_cfg_out': $!";
+	die "Cannot create '$libnet_cfg_out': $!";
 
 print "Writing $libnet_cfg_out\n";
 
diff --git a/utils/perlivp.PL b/utils/perlivp.PL
index 545d0f0..c2f0a11 100644
--- a/utils/perlivp.PL
+++ b/utils/perlivp.PL
@@ -65,8 +65,8 @@ while ($ARGV[0] =~ /^-/) {
         usage() if '?' =~ /\Q$flag/;
         usage() if 'h' =~ /\Q$flag/;
         usage() if 'H' =~ /\Q$flag/;
-        usage("unknown flag: `$flag'") unless 'HhPpVv' =~ /\Q$flag/;
-        warn "$0: `$flag' flag already set\n" if $opt{$flag}++;
+        usage("unknown flag: '$flag'") unless 'HhPpVv' =~ /\Q$flag/;
+        warn "$0: '$flag' flag already set\n" if $opt{$flag}++;
     } 
     shift;
 }
@@ -80,7 +80,7 @@ my $tests_total = 0;
 
 !NO!SUBS!
 
-# We cannot merely check the variable `$^X' in general since on many 
+# We cannot merely check the variable '$^X' in general since on many 
 # Unixes it is the basename rather than the full path to the perl binary.
 my $perlpath = '';
 if (defined($Config{'perlpath'})) { $perlpath = $Config{'perlpath'}; }
@@ -98,24 +98,24 @@ my \$useithreads = '$useithreads';
 
 print OUT <<'!NO!SUBS!';
 
-print "## Checking Perl binary via variable `\$perlpath' = $perlpath.\n" if $opt{'p'};
+print "## Checking Perl binary via variable '\$perlpath' = $perlpath.\n" if $opt{'p'};
 
 my $label = 'Executable perl binary';
 
 if (-x $perlpath) {
-    print "## Perl binary `$perlpath' appears executable.\n" if $opt{'v'};
+    print "## Perl binary '$perlpath' appears executable.\n" if $opt{'v'};
     print "ok 1 $label\n";
     $pass__total++;
 }
 else {
-    print "# Perl binary `$perlpath' does not appear executable.\n";
+    print "# Perl binary '$perlpath' does not appear executable.\n";
     print "not ok 1 $label\n";
     $error_total++;
 }
 $tests_total++;
 
 
-print "## Checking Perl version via variable `\$]'.\n" if $opt{'p'};
+print "## Checking Perl version via variable '\$]'.\n" if $opt{'p'};
 
 !NO!SUBS!
 
@@ -127,12 +127,12 @@ print OUT <<'!NO!SUBS!';
 
 $label = 'Perl version correct';
 if ($ivp_VERSION eq $]) {
-    print "## Perl version `$]' appears installed as expected.\n" if $opt{'v'};
+    print "## Perl version '$]' appears installed as expected.\n" if $opt{'v'};
     print "ok 2 $label\n";
     $pass__total++;
 }
 else {
-    print "# Perl version `$]' installed, expected $ivp_VERSION.\n";
+    print "# Perl version '$]' installed, expected $ivp_VERSION.\n";
     print "not ok 2 $label\n";
     $error_total++;
 }
@@ -147,18 +147,18 @@ $tests_total++;
     @INC = grep { length && $_ ne '.' } split ' ', $perl_V;
 }
 
-print "## Checking roots of the Perl library directory tree via variable `\@INC'.\n" if $opt{'p'};
+print "## Checking roots of the Perl library directory tree via variable '\@INC'.\n" if $opt{'p'};
 
 my $INC_total = 0;
 my $INC_there = 0;
 foreach (@INC) {
     next if $_ eq '.'; # skip -d test here
     if (-d $_) {
-        print "## Perl \@INC directory `$_' exists.\n" if $opt{'v'};
+        print "## Perl \@INC directory '$_' exists.\n" if $opt{'v'};
         $INC_there++;
     }
     else {
-        print "# Perl \@INC directory `$_' does not appear to exist.\n";
+        print "# Perl \@INC directory '$_' does not appear to exist.\n";
     }
     $INC_total++;
 }
@@ -184,11 +184,11 @@ foreach (qw(Config.pm ExtUtils/Installed.pm)) {
     $needed_total++;
     eval "require \"$_\";";
     if (!$@) {
-        print "## Module `$_' appears to be installed.\n" if $opt{'v'};
+        print "## Module '$_' appears to be installed.\n" if $opt{'v'};
         $needed_there++;
     }
     else {
-        print "# Needed module `$_' does not appear to be properly installed.\n";
+        print "# Needed module '$_' does not appear to be properly installed.\n";
     }
     $@ = undef;
 }
@@ -234,11 +234,11 @@ if (defined($Config{'extensions'})) {
            # Compilation failed in require at (eval 1) line 1.
         eval " require \"$_.pm\"; ";
         if (!$@) {
-            print "## Module `$_' appears to be installed.\n" if $opt{'v'};
+            print "## Module '$_' appears to be installed.\n" if $opt{'v'};
             $extensions_there++;
         }
         else {
-            print "# Required module `$_' does not appear to be properly installed.\n";
+            print "# Required module '$_' does not appear to be properly installed.\n";
             $@ = undef;
         }
         $extensions_total++;
@@ -253,10 +253,10 @@ if (defined($Config{'extensions'})) {
         $@ = undef;
         eval " require \"$unnecessary.pm\"; ";
         if ($@) {
-            print "## Unnecessary module `$unnecessary' does not appear to be installed.\n" if $opt{'v'};
+            print "## Unnecessary module '$unnecessary' does not appear to be installed.\n" if $opt{'v'};
         }
         else {
-            print "# Unnecessary module `$unnecessary' appears to be installed.\n";
+            print "# Unnecessary module '$unnecessary' appears to be installed.\n";
             $extensions_there++;
         }
     }
@@ -392,35 +392,35 @@ or not -v is thrown.
 
 =over 4
 
-=item * print "# Perl binary `$perlpath' does not appear executable.\n";
+=item * print "# Perl binary '$perlpath' does not appear executable.\n";
 
 Likely to occur for a perl binary that was not properly installed.
 Correct by conducting a proper installation.
 
-=item * print "# Perl version `$]' installed, expected $ivp_VERSION.\n";
+=item * print "# Perl version '$]' installed, expected $ivp_VERSION.\n";
 
 Likely to occur for a perl that was not properly installed.
 Correct by conducting a proper installation.
 
-=item * print "# Perl \@INC directory `$_' does not appear to exist.\n";
+=item * print "# Perl \@INC directory '$_' does not appear to exist.\n";
 
 Likely to occur for a perl library tree that was not properly installed.
 Correct by conducting a proper installation.
 
-=item * print "# Needed module `$_' does not appear to be properly installed.\n";
+=item * print "# Needed module '$_' does not appear to be properly installed.\n";
 
 One of the two modules that is used by perlivp was not present in the 
 installation.  This is a serious error since it adversely affects perlivp's
 ability to function.  You may be able to correct this by performing a
 proper perl installation.
 
-=item * print "# Required module `$_' does not appear to be properly installed.\n";
+=item * print "# Required module '$_' does not appear to be properly installed.\n";
 
 An attempt to C<eval "require $module"> failed, even though the list of 
 extensions indicated that it should succeed.  Correct by conducting a proper 
 installation.
 
-=item * print "# Unnecessary module `bLuRfle' appears to be installed.\n";
+=item * print "# Unnecessary module 'bLuRfle' appears to be installed.\n";
 
 This test not coming out ok could indicate that you have in fact installed 
 a bLuRfle.pm module or that the C<eval " require \"$module_name.pm\"; ">
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0016-RT-36079-Convert-to.patch
From 0bbdc39c8d5b1a626aed97e41e83470ffb1cb38f Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 20:19:56 -0500
Subject: [PATCH 16/23] [RT #36079] Convert ` to '.

---
 t/op/sub_lval.t  |    2 +-
 t/porting/diag.t |    4 ++--
 t/re/qr.t        |    2 +-
 t/re/regexp.t    |    8 ++++----
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/t/op/sub_lval.t b/t/op/sub_lval.t
index ce5da8d..ac3aaf3 100644
--- a/t/op/sub_lval.t
+++ b/t/op/sub_lval.t
@@ -131,7 +131,7 @@ EOE
 
 #@out = ($x, a3, $y, b2, $z, c4, $t);
 #@in = (34 .. 41, (undef) x 4, 46);
-#print "# `@out' ne `@in'\nnot " unless "@out" eq "@in";
+#print "# '@out' ne '@in'\nnot " unless "@out" eq "@in";
 
 like($_, qr/Can\'t return an uninitialized value from lvalue subroutine/);
 print "ok 22\n";
diff --git a/t/porting/diag.t b/t/porting/diag.t
index 50aa996..d899886 100644
--- a/t/porting/diag.t
+++ b/t/porting/diag.t
@@ -384,10 +384,10 @@ Can't return array to lvalue scalar context
 Can't return a %s from lvalue subroutine
 Can't return hash to lvalue scalar context
 Can't spawn "%s": %s
-Can't %s script `%s' with ARGV[0] being `%s'
+Can't %s script '%s' with ARGV[0] being '%s'
 Can't %s "%s": %s
 Can't %s %s%s%s
-Can't %s `%s' with ARGV[0] being `%s' (looking for executables only, not found)
+Can't %s '%s' with ARGV[0] being '%s' (looking for executables only, not found)
 Can't take %s of %f
 Can't use '%c' after -mname
 Can't use string ("%s"%s) as a subroutine ref while "strict refs" in use
diff --git a/t/re/qr.t b/t/re/qr.t
index eeda05c..1378772 100644
--- a/t/re/qr.t
+++ b/t/re/qr.t
@@ -10,7 +10,7 @@ plan tests => 5;
 
 my $rx = qr//;
 
-is(ref $rx, "Regexp", "qr// blessed into `Regexp' by default");
+is(ref $rx, "Regexp", "qr// blessed into 'Regexp' by default");
 
 
 # Make sure /$qr/ doesn���t clobber match vars before the match (bug 70764).
diff --git a/t/re/regexp.t b/t/re/regexp.t
index 815b877..3e5c6f8 100644
--- a/t/re/regexp.t
+++ b/t/re/regexp.t
@@ -168,7 +168,7 @@ EOFCODE
 	}
 	chomp( my $err = $@ );
 	if ($result eq 'c') {
-	    if ($err !~ m!^\Q$expect!) { print "not ok $test$todo (compile) $input => `$err'\n"; next TEST }
+	    if ($err !~ m!^\Q$expect!) { print "not ok $test$todo (compile) $input => '$err'\n"; next TEST }
 	    last;  # no need to study a syntax error
 	}
 	elsif ( $skip ) {
@@ -180,7 +180,7 @@ EOFCODE
 	    next TEST;
 	}
 	elsif ($@) {
-	    print "not ok $test$todo $input => error `$err'\n", _comment("$code\n$@\n"); next TEST;
+	    print "not ok $test$todo $input => error '$err'\n", _comment("$code\n$@\n"); next TEST;
 	}
 	elsif ($result =~ /^n/) {
 	    if ($match) { print "not ok $test$todo ($study) $input => false positive\n"; next TEST }
@@ -189,12 +189,12 @@ EOFCODE
 	    if (!$match || $got ne $expect) {
 	        eval { require Data::Dumper };
 		if ($@) {
-		    print "not ok $test$todo ($study) $input => `$got', match=$match\n", _comment("$code\n");
+		    print "not ok $test$todo ($study) $input => '$got', match=$match\n", _comment("$code\n");
 		}
 		else { # better diagnostics
 		    my $s = Data::Dumper->new([$subject],['subject'])->Useqq(1)->Dump;
 		    my $g = Data::Dumper->new([$got],['got'])->Useqq(1)->Dump;
-		    print "not ok $test$todo ($study) $input => `$got', match=$match\n", _comment("$s\n$g\n$code\n");
+		    print "not ok $test$todo ($study) $input => '$got', match=$match\n", _comment("$s\n$g\n$code\n");
 		}
 		next TEST;
 	    }
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0010-RT-36079-Convert-to.patch
From 38ac210c51758bd86420c90faebfc869118a8814 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 19:56:56 -0500
Subject: [PATCH 10/23] [RT #36079] Convert ` to '.

---
 Porting/bisect-runner.pl |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/Porting/bisect-runner.pl b/Porting/bisect-runner.pl
index fea722b..31fd98c 100755
--- a/Porting/bisect-runner.pl
+++ b/Porting/bisect-runner.pl
@@ -1424,7 +1424,7 @@ case "$osvers" in
 		cccdlflags="-DPIC -fPIC $cccdlflags"
 		lddlflags="--whole-archive -shared $lddlflags"
 	elif [ "`uname -m`" = "pmax" ]; then
-# NetBSD 1.3 and 1.3.1 on pmax shipped an `old' ld.so, which will not work.
+# NetBSD 1.3 and 1.3.1 on pmax shipped an 'old' ld.so, which will not work.
 		d_dlopen=$undef
 	elif [ -f /usr/libexec/ld.so ]; then
 		d_dlopen=$define
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0006-RT-36079-Convert-to.patch
From bd3838d053784b4042b571f692514a1c7652feb0 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 19:37:03 -0500
Subject: [PATCH 06/23] [RT #36079] Convert ` to '.

---
 lib/DB.pm            |    2 +-
 lib/File/Basename.pm |    2 +-
 lib/Getopt/Std.pm    |    2 +-
 lib/charnames.pm     |    2 +-
 lib/dumpvar.pl       |    2 +-
 lib/h2xs.t           |    2 +-
 lib/overload.pm      |   22 ++++----
 lib/overload.t       |   10 ++--
 lib/perl5db.pl       |  132 +++++++++++++++++++++++++-------------------------
 9 files changed, 88 insertions(+), 88 deletions(-)

diff --git a/lib/DB.pm b/lib/DB.pm
index 16ff99a..7048354 100644
--- a/lib/DB.pm
+++ b/lib/DB.pm
@@ -258,7 +258,7 @@ sub backtrace {
     } elsif ($s eq '(eval)') {
       $s = "eval {...}";
     }
-    $f = "file `$f'" unless $f eq '-e';
+    $f = "file '$f'" unless $f eq '-e';
     push @ret, "$w&$s$a from $f line $l";
     last if $DB::signal;
   }
diff --git a/lib/File/Basename.pm b/lib/File/Basename.pm
index e6681d2..fb72a0d 100644
--- a/lib/File/Basename.pm
+++ b/lib/File/Basename.pm
@@ -215,7 +215,7 @@ sub basename {
   my($path) = shift;
 
   # From BSD basename(1)
-  # The basename utility deletes any prefix ending with the last slash `/'
+  # The basename utility deletes any prefix ending with the last slash '/'
   # character present in string (after first stripping trailing slashes)
   _strip_trailing_sep($path);
 
diff --git a/lib/Getopt/Std.pm b/lib/Getopt/Std.pm
index 823bc4d..920b5b4 100644
--- a/lib/Getopt/Std.pm
+++ b/lib/Getopt/Std.pm
@@ -147,7 +147,7 @@ sub try_exit () {
     my $p = __PACKAGE__;
     print {output_h()} <<EOM;
   [Now continuing due to backward compatibility and excessive paranoia.
-   See ``perldoc $p'' about \$$p\::STANDARD_HELP_VERSION.]
+   See 'perldoc $p' about \$$p\::STANDARD_HELP_VERSION.]
 EOM
 }
 
diff --git a/lib/charnames.pm b/lib/charnames.pm
index d88ede0..e00bf53 100644
--- a/lib/charnames.pm
+++ b/lib/charnames.pm
@@ -966,7 +966,7 @@ sub import
   shift; ## ignore class name
 
   if (not @_) {
-    carp("`use charnames' needs explicit imports list");
+    carp("'use charnames' needs explicit imports list");
   }
   $^H{charnames} = \&charnames ;
   $^H{charnames_ord_aliases} = {};
diff --git a/lib/dumpvar.pl b/lib/dumpvar.pl
index 1c782dd..91ec407 100644
--- a/lib/dumpvar.pl
+++ b/lib/dumpvar.pl
@@ -342,7 +342,7 @@ sub unctrlSet {
     if ($in eq 'unctrl' or $in eq 'quote') {
       $unctrl = $in;
     } else {
-      print "Unknown value for `unctrl'.\n";
+      print "Unknown value for 'unctrl'.\n";
     }
   }
   $unctrl;
diff --git a/lib/h2xs.t b/lib/h2xs.t
index 6ce37ee..02de2af 100644
--- a/lib/h2xs.t
+++ b/lib/h2xs.t
@@ -58,7 +58,7 @@ if (!(-e $extracted_program)) {
     exit 0;
 }
 # You might also wish to bail out if your perl platform does not
-# do `$^X -e 'warn "Writing h2xst"' 2>&1`; duplicity.
+# do '$^X -e 'warn "Writing h2xst"' 2>&1`; duplicity.
 
 # ok on unix, nt, VMS, ...
 my $dupe = '2>&1';
diff --git a/lib/overload.pm b/lib/overload.pm
index b84552f..006c4e2 100644
--- a/lib/overload.pm
+++ b/lib/overload.pm
@@ -20,7 +20,7 @@ sub OVERLOAD {
 	$ {$package . "::(" . $_} = $sub;
 	$sub = \&nil;
       }
-      #print STDERR "Setting `$ {'package'}::\cO$_' to \\&`$sub'.\n";
+      #print STDERR "Setting '$ {'package'}::\cO$_' to \\&'$sub'.\n";
       *{$package . "::(" . $_} = \&{ $sub };
     }
   }
@@ -153,14 +153,14 @@ sub constant {
         last;
     }
     elsif (!exists $constants {$_ [0]}) {
-        warnings::warnif ("`$_[0]' is not an overloadable type");
+        warnings::warnif ("'$_[0]' is not an overloadable type");
     }
     elsif (!ref $_ [1] || "$_[1]" !~ /(^|=)CODE\(0x[0-9a-f]+\)$/) {
         # Can't use C<ref $_[1] eq "CODE"> above as code references can be
         # blessed, and C<ref> would return the package the ref is blessed into.
         if (warnings::enabled) {
             $_ [1] = "undef" unless defined $_ [1];
-            warnings::warn ("`$_[1]' is not a code reference");
+            warnings::warn ("'$_[1]' is not a code reference");
         }
     }
     else {
@@ -890,9 +890,9 @@ See L<BUGS AND PITFALLS>.
 =head2 Losing Overloading
 
 The restriction for the comparison operation is that even if, for example,
-`C<cmp>' should return a blessed reference, the autogenerated `C<lt>'
+C<cmp> should return a blessed reference, the autogenerated C<lt>
 function will produce only a standard logical value based on the
-numerical value of the result of `C<cmp>'.  In particular, a working
+numerical value of the result of C<cmp>.  In particular, a working
 numeric conversion is needed in this case (possibly expressed in terms of
 other conversions).
 
@@ -1100,13 +1100,13 @@ Use it as follows:
   require two_face;
   my $seven = two_face->new("vii", 7);
   printf "seven=$seven, seven=%d, eight=%d\n", $seven, $seven+1;
-  print "seven contains `i'\n" if $seven =~ /i/;
+  print "seven contains 'i'\n" if $seven =~ /i/;
 
 (The second line creates a scalar which has both a string value, and a
 numeric value.)  This prints:
 
   seven=vii, seven=7, eight=8
-  seven contains `i'
+  seven contains 'i'
 
 =head2 Two-face References
 
@@ -1387,7 +1387,7 @@ Use this module like this:
   my $cnt = $iter;
 
   while ($cnt) {
-    $cnt = $cnt - 1;		# Mutator `--' not implemented
+    $cnt = $cnt - 1;		# Mutator '--' not implemented
     $side = (sqrt(1 + $side**2) - 1)/$side;
   }
   printf "%s=%f\n", $side, $side;
@@ -1417,7 +1417,7 @@ the tables of operations, and change the code which fills %subr to
     $subr{$op} = eval "sub {shift() $op shift()}";
   }
   foreach my $op (split " ", "@overload::ops{qw(unary func)}") {
-    print "defining `$op'\n";
+    print "defining '$op'\n";
     $subr{$op} = eval "sub {$op shift()}";
   }
 
@@ -1583,11 +1583,11 @@ The module might issue the following warnings:
 (W) The call to overload::constant contained an odd number of arguments.
 The arguments should come in pairs.
 
-=item `%s' is not an overloadable type
+=item '%s' is not an overloadable type
 
 (W) You tried to overload a constant type the overload package is unaware of.
 
-=item `%s' is not a code reference
+=item '%s' is not a code reference
 
 (W) The second (fourth, sixth, ...) argument of overload::constant needs
 to be a code reference. Either an anonymous subroutine, or a reference
diff --git a/lib/overload.t b/lib/overload.t
index 1021a5f..5d6e38d 100644
--- a/lib/overload.t
+++ b/lib/overload.t
@@ -297,7 +297,7 @@ like($@, qr/no method found/);
 bless \$x, Oscalar;
 
 $na = eval { ~$a };		# Hash updated
-warn "`$na', $@" if $@;
+warn "'$na', $@" if $@;
 ok !$@;
 is($na, '_!_xx_!_');
 
@@ -935,25 +935,25 @@ unless ($aaa) {
 }
 
 {
-    # check the `$_[0]' is not an overloadable type warning
+    # check the '$_[0]' is not an overloadable type warning
     my $a = "" ;
     local $SIG{__WARN__} = sub {$a = $_[0]} ;
     $x = eval ' overload::constant "fred" => sub {} ; ' ;
     is($a, "");
     use warnings 'overload' ;
     $x = eval ' overload::constant "fred" => sub {} ; ' ;
-    like($a, qr/^`fred' is not an overloadable type at/);
+    like($a, qr/^'fred' is not an overloadable type at/);
 }
 
 {
-    # check the `$_[1]' is not a code reference warning
+    # check the '$_[1]' is not a code reference warning
     my $a = "" ;
     local $SIG{__WARN__} = sub {$a = $_[0]} ;
     $x = eval ' overload::constant "integer" => 1; ' ;
     is($a, "");
     use warnings 'overload' ;
     $x = eval ' overload::constant "integer" => 1; ' ;
-    like($a, qr/^`1' is not a code reference at/);
+    like($a, qr/^'1' is not a code reference at/);
 }
 
 {
diff --git a/lib/perl5db.pl b/lib/perl5db.pl
index 3d17d8f..066bfb3 100644
--- a/lib/perl5db.pl
+++ b/lib/perl5db.pl
@@ -722,7 +722,7 @@ sub eval {
 # Changes: 0.94
 #   + A lot of things changed after 0.94. First of all, core now informs
 #     debugger about entry into XSUBs, overloaded operators, tied operations,
-#     BEGIN and END. Handy with `O f=2'.
+#     BEGIN and END. Handy with 'O f=2'.
 #   + This can make debugger a little bit too verbose, please be patient
 #     and report your problems promptly.
 #   + Now the option frame has 3 values: 0,1,2. XXX Document!
@@ -731,24 +731,24 @@ sub eval {
 #     due to the need to examine the return value.
 #
 # Changes: 0.95
-#   + `v' command shows versions.
+#   + 'v' command shows versions.
 #
 # Changes: 0.96
-#   + `v' command shows version of readline.
-#     primitive completion works (dynamic variables, subs for `b' and `l',
-#     options). Can `p %var'
-#   + Better help (`h <' now works). New commands <<, >>, {, {{.
+#   + 'v' command shows version of readline.
+#     primitive completion works (dynamic variables, subs for 'b' and 'l',
+#     options). Can 'p %var'
+#   + Better help ('h <' now works). New commands <<, >>, {, {{.
 #     {dump|print}_trace() coded (to be able to do it from <<cmd).
-#   + `c sub' documented.
+#   + 'c sub' documented.
 #   + At last enough magic combined to stop after the end of debuggee.
 #   + !! should work now (thanks to Emacs bracket matching an extra
-#     `]' in a regexp is caught).
-#   + `L', `D' and `A' span files now (as documented).
-#   + Breakpoints in `require'd code are possible (used in `R').
+#     ']' in a regexp is caught).
+#   + 'L', 'D' and 'A' span files now (as documented).
+#   + Breakpoints in 'require'd code are possible (used in 'R').
 #   +  Some additional words on internal work of debugger.
-#   + `b load filename' implemented.
-#   + `b postpone subr' implemented.
-#   + now only `q' exits debugger (overwritable on $inhibit_exit).
+#   + 'b load filename' implemented.
+#   + 'b postpone subr' implemented.
+#   + now only 'q' exits debugger (overwritable on $inhibit_exit).
 #   + When restarting debugger breakpoints/actions persist.
 #   + Buglet: When restarting debugger only one breakpoint/action per
 #             autoloaded function persists.
@@ -756,25 +756,25 @@ sub eval {
 # Changes: 0.97: NonStop will not stop in at_exit().
 #   + Option AutoTrace implemented.
 #   + Trace printed differently if frames are printed too.
-#   + new `inhibitExit' option.
+#   + new 'inhibitExit' option.
 #   + printing of a very long statement interruptible.
-# Changes: 0.98: New command `m' for printing possible methods
-#   + 'l -' is a synonym for `-'.
+# Changes: 0.98: New command 'm' for printing possible methods
+#   + 'l -' is a synonym for '-'.
 #   + Cosmetic bugs in printing stack trace.
-#   +  `frame' & 8 to print "expanded args" in stack trace.
+#   +  'frame' & 8 to print "expanded args" in stack trace.
 #   + Can list/break in imported subs.
-#   + new `maxTraceLen' option.
+#   + new 'maxTraceLen' option.
 #   + frame & 4 and frame & 8 granted.
-#   + new command `m'
-#   + nonstoppable lines do not have `:' near the line number.
-#   + `b compile subname' implemented.
+#   + new command 'm'
+#   + nonstoppable lines do not have ':' near the line number.
+#   + 'b compile subname' implemented.
 #   + Will not use $` any more.
-#   + `-' behaves sane now.
-# Changes: 0.99: Completion for `f', `m'.
-#   +  `m' will remove duplicate names instead of duplicate functions.
-#   + `b load' strips trailing whitespace.
-#     completion ignores leading `|'; takes into account current package
-#     when completing a subroutine name (same for `l').
+#   + '-' behaves sane now.
+# Changes: 0.99: Completion for 'f', 'm'.
+#   +  'm' will remove duplicate names instead of duplicate functions.
+#   + 'b load' strips trailing whitespace.
+#     completion ignores leading '|'; takes into account current package
+#     when completing a subroutine name (same for 'l').
 # Changes: 1.07: Many fixed by tchrist 13-March-2000
 #   BUG FIXES:
 #   + Added bare minimal security checks on perldb rc files, plus
@@ -829,7 +829,7 @@ sub eval {
 #   Minor bugs corrected;
 #   + Support for auto-creation of new TTY window on startup, either
 #     unconditionally, or if started as a kid of another debugger session;
-#   + New `O'ption CreateTTY
+#   + New 'O'ption CreateTTY
 #       I<CreateTTY>      bits control attempts to create a new TTY on events:
 #                         1: on fork()
 #                         2: debugger is started inside debugger
@@ -844,7 +844,7 @@ sub eval {
 #     function;
 #   + Consistent support for TTY names of the form "TTYin,TTYout";
 #   + Switch line-tracing output too to the created TTY window;
-#   + make `b fork' DWIM with CORE::GLOBAL::fork;
+#   + make 'b fork' DWIM with CORE::GLOBAL::fork;
 #   + High-level debugger API cmd_*():
 #      cmd_b_load($filenamepart)            # b load filenamepart
 #      cmd_b_line($lineno [, $cond])        # b lineno [cond]
@@ -1818,7 +1818,7 @@ and then call the C<afterinit()> subroutine if there is one.
                 $slave_editor ? "enabled" : "available", ".\n"
             );
             print $OUT
-"\nEnter h or `h h' for help, or `$doccmd perldebug' for more help.\n\n";
+"\nEnter h or 'h h' for help, or '$doccmd perldebug' for more help.\n\n";
         } ## end else [ if ($term_pid eq '-1')
     } ## end unless ($runnonstop)
 } ## end else [ if ($notty)
@@ -2319,7 +2319,7 @@ completely replacing it.
                     eval "\$cmd =~ $alias{$i}";
                     if ($@) {
                         local $\ = '';
-                        print $OUT "Couldn't evaluate `$i' alias: $@";
+                        print $OUT "Couldn't evaluate '$i' alias: $@";
                         next CMD;
                     }
                 } ## end if ($alias{$i})
@@ -2510,7 +2510,7 @@ Just uses C<DB::methods> to determine what methods are available.
                         if ( ($try) = grep( m#^_<.*$file#, keys %main:: ) ) {
                             {
                                 $try = substr( $try, 2 );
-                                print $OUT "Choosing $try matching `$file':\n";
+                                print $OUT "Choosing $try matching '$file':\n";
                                 $file = $try;
                             }
                         } ## end if (($try) = grep(m#^_<.*$file#...
@@ -2518,7 +2518,7 @@ Just uses C<DB::methods> to determine what methods are available.
 
                     # If not successfully switched now, we failed.
                     if ( !defined $main::{ '_<' . $file } ) {
-                        print $OUT "No file matching `$file' is loaded.\n";
+                        print $OUT "No file matching '$file' is loaded.\n";
                         next CMD;
                     }
 
@@ -3271,7 +3271,7 @@ pick it up.
                     else {
 
                         # Couldn't open it.
-                        &warn("Can't execute `$1': $!\n");
+                        &warn("Can't execute '$1': $!\n");
                     }
                     next CMD;
                 };
@@ -3411,7 +3411,7 @@ reading another.
                     unless ( $piped = open( OUT, $pager ) ) {
 
                         # Couldn't open pipe to pager.
-                        &warn("Can't pipe output to `$pager'");
+                        &warn("Can't pipe output to '$pager'");
                         if ( $pager =~ /^\|/ ) {
 
                             # Redirect I/O back again.
@@ -3515,7 +3515,7 @@ our standard filehandles for input and output.
                     # most of the $? crud was coping with broken cshisms
                     # $? is explicitly set to 0, so this never runs.
                     if ($?) {
-                        print SAVEOUT "Pager `$pager' failed: ";
+                        print SAVEOUT "Pager '$pager' failed: ";
                         if ( $? == -1 ) {
                             print SAVEOUT "shell returned -1\n";
                         }
@@ -3569,7 +3569,7 @@ again.
 =cut
 
         # No more commands? Quit.
-        $fall_off_end = 1 unless defined $cmd;    # Emulate `q' on EOF
+        $fall_off_end = 1 unless defined $cmd;    # Emulate 'q' on EOF
 
         # Evaluate post-prompt commands.
         foreach $evalarg (@$post) {
@@ -4290,7 +4290,7 @@ sub cmd_b_load {
     # Normalize for the purposes of our printing this.
     local $\ = '';
     local $" = ' ';
-    print $OUT "Will stop on load of `@files'.\n";
+    print $OUT "Will stop on load of '@files'.\n";
 } ## end sub cmd_b_load
 
 =head3 C<$filename_error> (API package global)
@@ -4435,7 +4435,7 @@ sub breakable_line_in_filename {
     local *dbline = $main::{ '_<' . $f };
 
     # If there's an error, it's in this other file.
-    local $filename_error = " of `$f'";
+    local $filename_error = " of '$f'";
 
     # Find the breakable line.
     breakable_line(@_);
@@ -4528,7 +4528,7 @@ sub break_on_filename_line {
     local *dbline = $main::{ '_<' . $f };
 
     # Localize the variables that break_on_line uses to make its message.
-    local $filename_error = " of `$f'";
+    local $filename_error = " of '$f'";
     local $filename       = $f;
 
     # Add the breakpoint.
@@ -5579,7 +5579,7 @@ sub postponed_sub {
     } ## end if ($postponed{$subname...
     elsif ( $postponed{$subname} eq 'compile' ) { $signal = 1 }
 
-    #print $OUT "In postponed_sub for `$subname'.\n";
+    #print $OUT "In postponed_sub for '$subname'.\n";
 } ## end sub postponed_sub
 
 =head2 C<postponed>
@@ -5809,7 +5809,7 @@ sub print_trace {
         my $file = $sub[$i]{file};
 
         # Put in a filename header if short is off.
-        $file = $file eq '-e' ? $file : "file `$file'" unless $short;
+        $file = $file eq '-e' ? $file : "file '$file'" unless $short;
 
         # Get the actual sub's name, and shorten to $maxtrace's requirement.
         $s = $sub[$i]{sub};
@@ -6131,8 +6131,8 @@ sub setterm {
         if ($tty) {
             my ( $i, $o ) = split $tty, /,/;
             $o = $i unless defined $o;
-            open( IN,  "<$i" ) or die "Cannot open TTY `$i' for read: $!";
-            open( OUT, ">$o" ) or die "Cannot open TTY `$o' for write: $!";
+            open( IN,  "<$i" ) or die "Cannot open TTY '$i' for read: $!";
+            open( OUT, ">$o" ) or die "Cannot open TTY '$o' for write: $!";
             $IN  = \*IN;
             $OUT = \*OUT;
             my $sel = select($OUT);
@@ -6739,20 +6739,20 @@ sub parse_options {
 
         # Options are always all word characters, followed by a non-word
         # separator.
-        s/^(\w+)(\W?)// or print( $OUT "Invalid option `$_'\n" ), last;
+        s/^(\w+)(\W?)// or print( $OUT "Invalid option '$_'\n" ), last;
         my ( $opt, $sep ) = ( $1, $2 );
 
         # Make sure that such an option exists.
         my $matches = grep( /^\Q$opt/ && ( $option = $_ ), @options )
           || grep( /^\Q$opt/i && ( $option = $_ ), @options );
 
-        print( $OUT "Unknown option `$opt'\n" ), next unless $matches;
-        print( $OUT "Ambiguous option `$opt'\n" ), next if $matches > 1;
+        print( $OUT "Unknown option '$opt'\n" ), next unless $matches;
+        print( $OUT "Ambiguous option '$opt'\n" ), next if $matches > 1;
         my $val;
 
         # '?' as separator means query, but must have whitespace after it.
         if ( "?" eq $sep ) {
-            print( $OUT "Option query `$opt?' followed by non-space `$_'\n" ),
+            print( $OUT "Option query '$opt?' followed by non-space '$_'\n" ),
               last
               if /^\S/;
 
@@ -6790,7 +6790,7 @@ sub parse_options {
             my ($end) =
               "\\" . substr( ")]>}$sep", index( "([<{", $sep ), 1 );    #}
             s/^(([^\\$end]|\\[\\$end])*)$end($|\s+)//
-              or print( $OUT "Unclosed option value `$opt$sep$_'\n" ), last;
+              or print( $OUT "Unclosed option value '$opt$sep$_'\n" ), last;
             ( $val = $1 ) =~ s/\\([\\$end])/$1/g;
         } ## end else [ if ("?" eq $sep)
 
@@ -6798,7 +6798,7 @@ sub parse_options {
         if ( $opt_needs_val{$option} && $val_defaulted ) {
             my $cmd = ( $CommandSet eq '580' ) ? 'o' : 'O';
             print $OUT
-"Option `$opt' is non-boolean.  Use `$cmd $option=VAL' to set, `$cmd $option?' to query\n";
+"Option '$opt' is non-boolean.  Use '$cmd $option=VAL' to set, '$cmd $option?' to query\n";
             next;
         } ## end if ($opt_needs_val{$option...
 
@@ -6939,7 +6939,7 @@ sub reset_IN_OUT {
 
     # This term can't get a new tty now. Better luck later.
     elsif ($term) {
-        &warn("Too late to set IN/OUT filehandles, enabled on next `R'!\n");
+        &warn("Too late to set IN/OUT filehandles, enabled on next 'R'!\n");
     }
 
     # Set the filehndles up as they were.
@@ -6994,8 +6994,8 @@ sub TTY {
         }
 
         # Open file onto the debugger's filehandles, if you can.
-        open IN,  $in     or die "cannot open `$in' for read: $!";
-        open OUT, ">$out" or die "cannot open `$out' for write: $!";
+        open IN,  $in     or die "cannot open '$in' for read: $!";
+        open OUT, ">$out" or die "cannot open '$out' for write: $!";
 
         # Swap to the new filehandles.
         reset_IN_OUT( \*IN, \*OUT );
@@ -7006,7 +7006,7 @@ sub TTY {
 
     # Terminal doesn't support new TTY, or doesn't support readline.
     # Can't do it now, try restarting.
-    &warn("Too late to set TTY, enabled on next `R'!\n") if $term and @_;
+    &warn("Too late to set TTY, enabled on next 'R'!\n") if $term and @_;
 
     # Useful if done through PERLDB_OPTS:
     $console = $tty = shift if @_;
@@ -7025,7 +7025,7 @@ we save the value to use it if we're restarted.
 
 sub noTTY {
     if ($term) {
-        &warn("Too late to set noTTY, enabled on next `R'!\n") if @_;
+        &warn("Too late to set noTTY, enabled on next 'R'!\n") if @_;
     }
     $notty = shift if @_;
     $notty;
@@ -7042,7 +7042,7 @@ the value in case a restart is done so we can change it then.
 
 sub ReadLine {
     if ($term) {
-        &warn("Too late to set ReadLine, enabled on next `R'!\n") if @_;
+        &warn("Too late to set ReadLine, enabled on next 'R'!\n") if @_;
     }
     $rl = shift if @_;
     $rl;
@@ -7091,7 +7091,7 @@ debugger remembers the setting in case you restart, though.
 
 sub NonStop {
     if ($term) {
-        &warn("Too late to set up NonStop mode, enabled on next `R'!\n")
+        &warn("Too late to set up NonStop mode, enabled on next 'R'!\n")
           if @_;
     }
     $runnonstop = shift if @_;
@@ -7215,7 +7215,7 @@ sub LineInfo {
     $slave_editor = ( $stream =~ /^\|/ );
 
     # Open it up and unbuffer it.
-    open( LINEINFO, "$stream" ) || &warn("Cannot open `$stream' for write");
+    open( LINEINFO, "$stream" ) || &warn("Cannot open '$stream' for write");
     $LINEINFO = \*LINEINFO;
     my $save = select($LINEINFO);
     $| = 1;
@@ -7444,7 +7444,7 @@ B<o> [I<opt>B<=>I<val>] [I<opt>=B<\">I<val>B<\">] ...
     During startup options are initialized from \$ENV{PERLDB_OPTS}.
     You can put additional initialization options I<TTY>, I<noTTY>,
     I<ReadLine>, I<NonStop>, and I<RemotePort> there (or use
-    `B<R>' after you set them).
+    'B<R>' after you set them).
 
 B<q> or B<^D>        Quit. Set B<\$DB::finished = 0> to debug global destruction.
 B<h>        Summary of debugger commands.
@@ -7454,7 +7454,7 @@ B<$doccmd> I<manpage>    Runs the external doc viewer B<$doccmd> command on the
         named Perl I<manpage>, or on B<$doccmd> itself if omitted.
         Set B<\$DB::doccmd> to change viewer.
 
-Type `|h h' for a paged display if this was too hard to read.
+Type '|h h' for a paged display if this was too hard to read.
 
 ";    # Fix balance of vi % matching: }}}}
 
@@ -7527,7 +7527,7 @@ B<b> [I<line>] [I<condition>]
 B<b> I<subname> [I<condition>]
         Set breakpoint at first line of subroutine.
 B<b> I<\$var>        Set breakpoint at first line of subroutine referenced by I<\$var>.
-B<b> B<load> I<filename> Set breakpoint on `require'ing the given file.
+B<b> B<load> I<filename> Set breakpoint on 'require'ing the given file.
 B<b> B<postpone> I<subname> [I<condition>]
         Set breakpoint at first line of subroutine after 
         it is compiled.
@@ -7620,7 +7620,7 @@ B<O> [I<opt>B<=>I<val>] [I<opt>=B<\">I<val>B<\">] ...
     During startup options are initialized from \$ENV{PERLDB_OPTS}.
     You can put additional initialization options I<TTY>, I<noTTY>,
     I<ReadLine>, I<NonStop>, and I<RemotePort> there (or use
-    `B<R>' after you set them).
+    'B<R>' after you set them).
 
 B<q> or B<^D>        Quit. Set B<\$DB::finished = 0> to debug global destruction.
 B<h> [I<db_command>]    Get help [on a specific debugger command], enter B<|h> to page.
@@ -7629,7 +7629,7 @@ B<$doccmd> I<manpage>    Runs the external doc viewer B<$doccmd> command on the
         named Perl I<manpage>, or on B<$doccmd> itself if omitted.
         Set B<\$DB::doccmd> to change viewer.
 
-Type `|h' for a paged display if this was too hard to read.
+Type '|h' for a paged display if this was too hard to read.
 
 ";    # Fix balance of vi % matching: }}}}
 
@@ -8889,7 +8889,7 @@ Say we're done.
 
 sub end_report {
     local $\ = '';
-    print $OUT "Use `q' to quit or `R' to restart.  `h q' for details.\n";
+    print $OUT "Use 'q' to quit or 'R' to restart.  'h q' for details.\n";
 }
 
 =head2 clean_ENV
@@ -9599,7 +9599,7 @@ sub cmd_prepost {
     elsif ( $cmd =~ /^\{/o ) {
         if ( $cmd =~ /^\{.*\}$/o && unbalanced( substr( $cmd, 1 ) ) ) {
             print $OUT
-"$cmd is now a debugger command\nuse `;$cmd' if you mean Perl code\n";
+"$cmd is now a debugger command\nuse ';$cmd' if you mean Perl code\n";
         }
 
         # Properly balanced. Pre-prompt debugger actions.
@@ -9676,7 +9676,7 @@ the C<END> block documentation for more details.
 package DB::fake;
 
 sub at_exit {
-    "Debugged program terminated.  Use `q' to quit or `R' to restart.";
+    "Debugged program terminated.  Use 'q' to quit or 'R' to restart.";
 }
 
 package DB;    # Do not trace this 1; below!
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0007-RT-36079-Convert-to.patch
From af63cb7a8b48d2462025750b4629ac891ac85929 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 19:41:00 -0500
Subject: [PATCH 07/23] [RT #36079] Convert ` to '.

---
 lib/sigtrap.pm |    2 +-
 mro.c          |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/sigtrap.pm b/lib/sigtrap.pm
index de520a0..59c15b9 100644
--- a/lib/sigtrap.pm
+++ b/lib/sigtrap.pm
@@ -115,7 +115,7 @@ sub handler_traceback {
 	} elsif ($s eq '(eval)') {
 	    $s = "eval {...}";
 	}
-	$f = "file `$f'" unless $f eq '-e';
+	$f = "file '$f'" unless $f eq '-e';
 	$mess = "$w$s$a called from $f line $l\n";
 	syswrite(STDERR, $mess, length($mess));
     }
diff --git a/mro.c b/mro.c
index 0dd65b2..1c5f4eb 100644
--- a/mro.c
+++ b/mro.c
@@ -994,7 +994,7 @@ S_mro_gather_and_rename(pTHX_ HV * const stashes, HV * const seen_stashes,
        /* Add it to the big list if it needs
 	* mro_isa_changed_in called on it. That happens if it was
 	* detached from the symbol table (so it had no HvENAME) before
-	* being assigned to the spot named by the `name' variable, because
+	* being assigned to the spot named by the 'name' variable, because
 	* its cached isa linearisation is now stale (the effective name
 	* having changed), and subclasses will then use that cache when
 	* mro_package_moved calls mro_isa_changed_in. (See
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0009-RT-36079-Convert-to.patch
From 4b432215af8c379c73da62c8f2e52fc896d663f9 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 19:51:11 -0500
Subject: [PATCH 09/23] [RT #36079] Convert ` to '.

---
 pod/perlsyn.pod |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/pod/perlsyn.pod b/pod/perlsyn.pod
index 93c640c..3d4825a 100644
--- a/pod/perlsyn.pod
+++ b/pod/perlsyn.pod
@@ -998,7 +998,7 @@ shell:
 
     % perl
     # line 200 "bzzzt"
-    # the `#' on the previous line must be the first char on line
+    # the '#' on the previous line must be the first char on line
     die 'foo';
     __END__
     foo at bzzzt line 201.
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0002-RT-36079-Convert-to.patch
From 4fa7e74f10d52c2b3d5349ae90aca904b27138df Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 19:15:23 -0500
Subject: [PATCH 02/23] [RT #36079] Convert ` to '.

---
 dist/Cwd/Cwd.xs                                    |    8 ++--
 dist/Cwd/t/rel2abs2rel.t                           |    4 +-
 dist/Dumpvalue/lib/Dumpvalue.pm                    |    4 +-
 .../lib/ExtUtils/CBuilder/Platform/os2.pm          |    4 +-
 dist/ExtUtils-Install/Changes                      |    2 +-
 dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm      |   14 +++---
 dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp          |    2 +-
 dist/IO/lib/IO/Dir.pm                              |    2 +-
 dist/Pod-Perldoc/lib/Pod/Perldoc.pm                |   14 +++---
 dist/Storable/Storable.xs                          |   44 ++++++++++----------
 dist/if/if.pm                                      |    2 +-
 11 files changed, 50 insertions(+), 50 deletions(-)

diff --git a/dist/Cwd/Cwd.xs b/dist/Cwd/Cwd.xs
index d55c318..0b4f363 100644
--- a/dist/Cwd/Cwd.xs
+++ b/dist/Cwd/Cwd.xs
@@ -36,7 +36,7 @@
  *    products derived from this software without specific prior written
  *    permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ''AS IS'' AND
  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
@@ -96,11 +96,11 @@ bsd_realpath(const char *path, char resolved[MAXPATHLEN])
 	}
 
 	/*
-	 * Iterate over path components in `left'.
+	 * Iterate over path components in 'left'.
 	 */
 	while (left_len != 0) {
 		/*
-		 * Extract the next path component and adjust `left'
+		 * Extract the next path component and adjust 'left'
 		 * and its length.
 		 */
 		p = strchr(left, '/');
@@ -186,7 +186,7 @@ bsd_realpath(const char *path, char resolved[MAXPATHLEN])
 	/*
 				 * If there are any path components left, then
 				 * append them to symlink. The result is placed
-				 * in `left'.
+				 * in 'left'.
 	 */
 				if (p != NULL) {
 					if (symlink[slen - 1] != '/') {
diff --git a/dist/Cwd/t/rel2abs2rel.t b/dist/Cwd/t/rel2abs2rel.t
index 0959d57..0d684f1 100644
--- a/dist/Cwd/t/rel2abs2rel.t
+++ b/dist/Cwd/t/rel2abs2rel.t
@@ -58,10 +58,10 @@ sub sayok{
 print "# Checking manipulations of \$^X=$^X\n";
 
 my $perl = safe_rel($^X);
-is( sayok($perl), "ok\n",   "`$perl rel2abs2rel$$.pl` works" );
+is( sayok($perl), "ok\n",   "'$perl rel2abs2rel$$.pl' works" );
 
 $perl = File::Spec->rel2abs($^X);
-is( sayok($perl), "ok\n",   "`$perl rel2abs2rel$$.pl` works" );
+is( sayok($perl), "ok\n",   "'$perl rel2abs2rel$$.pl' works" );
 
 $perl = File::Spec->canonpath($perl);
 is( sayok($perl), "ok\n",   "canonpath(rel2abs($^X)) = $perl" );
diff --git a/dist/Dumpvalue/lib/Dumpvalue.pm b/dist/Dumpvalue/lib/Dumpvalue.pm
index f3cde0b..f5c39ff 100644
--- a/dist/Dumpvalue/lib/Dumpvalue.pm
+++ b/dist/Dumpvalue/lib/Dumpvalue.pm
@@ -15,7 +15,7 @@ our(%address, $stab, @stab, %stab, %subs);
 # (IZ) changes for objectification:
 #   c) quote() renamed to method set_quote();
 #   d) unctrlSet() renamed to method set_unctrl();
-#   f) Compiles with `use strict', but in two places no strict refs is needed:
+#   f) Compiles with 'use strict', but in two places no strict refs is needed:
 #      maybe more problems are waiting...
 
 my %defaults = (
@@ -299,7 +299,7 @@ sub set_unctrl {
     if ($in eq 'unctrl' or $in eq 'quote') {
       $self->{unctrl} = $in;
     } else {
-      print "Unknown value for `unctrl'.\n";
+      print "Unknown value for 'unctrl'.\n";
     }
   }
   $self->{unctrl};
diff --git a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/os2.pm b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/os2.pm
index 828a957..6dc932c 100644
--- a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/os2.pm
+++ b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/os2.pm
@@ -57,9 +57,9 @@ sub extra_link_args_after_prelink {
   my ($self, %args) = @_;
 
   my @DEF = grep /\.def$/i, @{$args{prelink_res}};
-  die "More than one .def files created by `prelink' stage" if @DEF > 1;
+  die "More than one .def files created by 'prelink' stage" if @DEF > 1;
   # XXXX No "$how" argument here, so how to test for dynamic link?
-  die "No .def file created by `prelink' stage"
+  die "No .def file created by 'prelink' stage"
     unless @DEF or not @{$args{prelink_res}};
 
   my @after_libs = ($OS2::is_aout ? ()
diff --git a/dist/ExtUtils-Install/Changes b/dist/ExtUtils-Install/Changes
index 2fc02bb..30bbbe1 100644
--- a/dist/ExtUtils-Install/Changes
+++ b/dist/ExtUtils-Install/Changes
@@ -291,7 +291,7 @@ This means that you can make .svn directories be ignored on install.
 
 - Integrated patch from Randy Sims.
 
-    1. Fixes error during `perl Makefile.PL` because it MakeMaker can't
+    1. Fixes error during 'perl Makefile.PL' because it MakeMaker can't
     find the NAME section describing DISTNAME (which has the 'ex-'
     prefix).
 
diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm
index 7d1f9b7..d743097 100644
--- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm
+++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm
@@ -393,7 +393,7 @@ EOM
           if ($len_name =~ /^length\( \s* (\w+) \s* \)\z/x) {
             $len_name = "XSauto_length_of_$1";
             $islength = 1;
-            die "Default value on length() argument: `$_'"
+            die "Default value on length() argument: '$_'"
               if length $default;
           }
           if (length $pre or $islength) { # Has a type
@@ -536,7 +536,7 @@ EOF
 
     #gcc -Wall: if an xsub has PPCODE is used
     #it is possible none of ST, XSRETURN or XSprePUSH macros are used
-    #hence `ax' (setup by dXSARGS) is unused
+    #hence 'ax' (setup by dXSARGS) is unused
     #XXX: could breakup the dXSARGS; into dSP;dMARK;dITEMS
     #but such a move could break third-party extensions
     print Q(<<"EOF") if $PPCODE;
@@ -781,13 +781,13 @@ EOF
 #    ENDHANDLERS
 EOF
       if ($self->check_keyword("CASE")) {
-        $self->blurt("Error: No `CASE:' at top of function")
+        $self->blurt("Error: No 'CASE:' at top of function")
           unless $self->{condnum};
         $_ = "CASE: $_";    # Restore CASE: label
         next;
       }
       last if $_ eq "$END:";
-      $self->death(/^$self->{BLOCK_re}/o ? "Misplaced `$1:'" : "Junk at end of function ($_)");
+      $self->death(/^$self->{BLOCK_re}/o ? "Misplaced '$1:'" : "Junk at end of function ($_)");
     }
 
     print Q(<<"EOF") if $self->{except};
@@ -914,7 +914,7 @@ EOF
   #file name argument. If the wrong qualifier is used, it causes breakage with
   #C++ compilers and warnings with recent gcc.
   #-Wall: if there is no $Full_func_name there are no xsubs in this .xs
-  #so `file' is unused
+  #so 'file' is unused
   print Q(<<"EOF") if $Full_func_name;
 ##if (PERL_REVISION == 5 && PERL_VERSION < 9)
 #    char* file = __FILE__;
@@ -1050,7 +1050,7 @@ sub process_keyword {
 sub CASE_handler {
   my $self = shift;
   $_ = shift;
-  $self->blurt("Error: `CASE:' after unconditional `CASE:'")
+  $self->blurt("Error: 'CASE:' after unconditional 'CASE:'")
     if $self->{condnum} && $self->{cond} eq '';
   $self->{cond} = $_;
   trim_whitespace($self->{cond});
@@ -1670,7 +1670,7 @@ sub fetch_para {
   my $self = shift;
 
   # parse paragraph
-  $self->death("Error: Unterminated `#if/#ifdef/#ifndef'")
+  $self->death("Error: Unterminated '#if/#ifdef/#ifndef'")
     if !defined $self->{lastline} && $self->{XSStack}->[-1]{type} eq 'if';
   @{ $self->{line} } = ();
   @{ $self->{line_no} } = ();
diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp b/dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp
index 7a82550..fa0cd50 100644
--- a/dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp
+++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp
@@ -127,7 +127,7 @@ number.
 
 =item B<-nolinenumbers>
 
-Prevents the inclusion of `#line' directives in the output.
+Prevents the inclusion of '#line' directives in the output.
 
 =item B<-nooptimize>
 
diff --git a/dist/IO/lib/IO/Dir.pm b/dist/IO/lib/IO/Dir.pm
index 74d0778..3486532 100644
--- a/dist/IO/lib/IO/Dir.pm
+++ b/dist/IO/lib/IO/Dir.pm
@@ -186,7 +186,7 @@ argument which,  if given, C<new> will pass to C<open>
 =back
 
 The following methods are wrappers for the directory related functions built
-into perl (the trailing `dir' has been removed from the names). See L<perlfunc>
+into perl (the trailing 'dir' has been removed from the names). See L<perlfunc>
 for details of these functions.
 
 =over 4
diff --git a/dist/Pod-Perldoc/lib/Pod/Perldoc.pm b/dist/Pod-Perldoc/lib/Pod/Perldoc.pm
index cdfea45..8503a66 100644
--- a/dist/Pod-Perldoc/lib/Pod/Perldoc.pm
+++ b/dist/Pod-Perldoc/lib/Pod/Perldoc.pm
@@ -271,13 +271,13 @@ Options:
 PageName|ModuleName|ProgramName|URL...
          is the name of a piece of documentation that you want to look at. You
          may either give a descriptive name of the page (as in the case of
-         `perlfunc') the name of a module, either like `Term::Info' or like
-         `Term/Info', or the name of a program, like `perldoc', or a URL 
+         'perlfunc') the name of a module, either like 'Term::Info' or like
+         'Term/Info', or the name of a program, like 'perldoc', or a URL 
          starting with http(s). 
 
 BuiltinFunction
          is the name of a perl function.  Will extract documentation from
-         `perlfunc'.
+         'perlfunc'.
 
 FAQRegex
          is a regex. Will search perlfaq[1-9] for and extract any
@@ -563,7 +563,7 @@ sub formatter_sanity_check {
     die
        "When using Perldoc to format with $formatter_class, you have to\n"
      . "specify -T or -dsomefile$ext\n"
-     . "See `$me perldoc' for more information on those switches.\n"
+     . "See '$me perldoc' for more information on those switches.\n"
     ;
   }
 }
@@ -998,7 +998,7 @@ sub search_perlfunc {
     open(PFUNC, "<", $perlfunc)               # "Funk is its own reward"
         or die("Can't open $perlfunc: $!");
 
-    # Functions like -r, -e, etc. are listed under `-X'.
+    # Functions like -r, -e, etc. are listed under '-X'.
     my $search_re = ($self->opt_f =~ /^-[rwxoRWXOeszfdlpSbctugkTBMAC]$/)
                         ? '(?:I<)?-X' : quotemeta($self->opt_f) ;
 
@@ -1042,7 +1042,7 @@ sub search_perlfunc {
     }
     if (!@$pod) {
         die sprintf
-          "No documentation for perl function `%s' found\n",
+          "No documentation for perl function '%s' found\n",
           $self->opt_f
         ;
     }
@@ -1086,7 +1086,7 @@ EOD
         }
         close(INFAQ);
     }
-    die("No documentation for perl FAQ keyword `$search_key' found\n")
+    die("No documentation for perl FAQ keyword '$search_key' found\n")
      unless @$pod;
 
     return;
diff --git a/dist/Storable/Storable.xs b/dist/Storable/Storable.xs
index 38e266d..ca6f9b4 100644
--- a/dist/Storable/Storable.xs
+++ b/dist/Storable/Storable.xs
@@ -986,7 +986,7 @@ static const char byteorderstr_56[] = {BYTEORDER_BYTES_56, 0};
   } STMT_END
 
 /*
- * Bless `s' in `p', via a temporary reference, required by sv_bless().
+ * Bless 's' in 'p', via a temporary reference, required by sv_bless().
  * "A" magic is added before the sv_bless for overloaded classes, this avoids
  * an expensive call to S_reset_amagic in sv_bless.
  */
@@ -1235,7 +1235,7 @@ static void init_store_context(
 	cxt->entry = 1;					/* No recursion yet */
 
 	/*
-	 * The `hseen' table is used to keep track of each SV stored and their
+	 * The 'hseen' table is used to keep track of each SV stored and their
 	 * associated tag numbers is special. It is "abused" because the
 	 * values stored are not real SV, just integers cast to (SV *),
 	 * which explains the freeing below.
@@ -1277,7 +1277,7 @@ static void init_store_context(
 #endif
 
 	/*
-	 * The `hclass' hash uses the same settings as `hseen' above, but it is
+	 * The 'hclass' hash uses the same settings as 'hseen' above, but it is
 	 * used to assign sequential tags (numbers) to class names for blessed
 	 * objects.
 	 *
@@ -1291,7 +1291,7 @@ static void init_store_context(
 #endif
 
 	/*
-	 * The `hook' hash table is used to keep track of the references on
+	 * The 'hook' hash table is used to keep track of the references on
 	 * the STORABLE_freeze hook routines, when found in some class name.
 	 *
 	 * It is assumed that the inheritance tree will not be changed during
@@ -1302,7 +1302,7 @@ static void init_store_context(
 	cxt->hook = newHV();			/* Table where hooks are cached */
 
 	/*
-	 * The `hook_seen' array keeps track of all the SVs returned by
+	 * The 'hook_seen' array keeps track of all the SVs returned by
 	 * STORABLE_freeze hooks for us to serialize, so that they are not
 	 * reclaimed until the end of the serialization process.  Each SV is
 	 * only stored once, the first time it is seen.
@@ -1722,7 +1722,7 @@ static SV *pkg_can(
 	 * Look into the cache to see whether we already have determined
 	 * where the routine was, if any.
 	 *
-	 * NOTA BENE: we don't use `method' at all in our lookup, since we know
+	 * NOTA BENE: we don't use 'method' at all in our lookup, since we know
 	 * that only one hook (i.e. always the same) is cached in a given cache.
 	 */
 
@@ -1847,8 +1847,8 @@ static AV *array_call(
 /*
  * known_class
  *
- * Lookup the class name in the `hclass' table and either assign it a new ID
- * or return the existing one, by filling in `classnum'.
+ * Lookup the class name in the 'hclass' table and either assign it a new ID
+ * or return the existing one, by filling in 'classnum'.
  *
  * Return true if the class was known, false if the ID was just generated.
  */
@@ -2875,7 +2875,7 @@ static int store_hook(
 		 * Signal the tie-ing magic by setting the object type as SHT_EXTRA
 		 * (since we have only 2 bits in <flags> to store the type), and an
 		 * <extra> byte flag will be emitted after the FIRST <flags> in the
-		 * stream, carrying what we put in `eflags'.
+		 * stream, carrying what we put in 'eflags'.
 		 */
 		obj_type = SHT_EXTRA;
 		switch (SvTYPE(sv)) {
@@ -2907,7 +2907,7 @@ static int store_hook(
 	 *    $object->STORABLE_freeze($cloning);
 	 *
 	 * but we don't have the $object here.  For instance, if $object is
-	 * a blessed array, what we have in `sv' is the array, and we can't
+	 * a blessed array, what we have in 'sv' is the array, and we can't
 	 * call a method on those.
 	 *
 	 * Therefore, we need to create a temporary reference to the object and
@@ -3048,7 +3048,7 @@ static int store_hook(
 			CROAK(("Could not serialize item #%d from hook in %s", i, classname));
 #endif
 		/*
-		 * It was the first time we serialized `xsv'.
+		 * It was the first time we serialized 'xsv'.
 		 *
 		 * Keep this SV alive until the end of the serialization: if we
 		 * disposed of it right now by decrementing its refcount, and it was
@@ -3064,7 +3064,7 @@ static int store_hook(
 
 	sv_seen:
 		/*
-		 * Dispose of the REF they returned.  If we saved the `xsv' away
+		 * Dispose of the REF they returned.  If we saved the 'xsv' away
 		 * in the array of returned SVs, that will not cause the underlying
 		 * referenced SV to be reclaimed.
 		 */
@@ -3332,7 +3332,7 @@ static int store_blessed(
  * We don't know how to store the item we reached, so return an error condition.
  * (it's probably a GLOB, some CODE reference, etc...)
  *
- * If they defined the `forgive_me' variable at the Perl level to some
+ * If they defined the 'forgive_me' variable at the Perl level to some
  * true value, then don't croak, just warn, and store a placeholder string
  * instead.
  */
@@ -3551,7 +3551,7 @@ static int store(pTHX_ stcxt_t *cxt, SV *sv)
 #endif
 
 	/*
-	 * Store `sv' and everything beneath it, using appropriate routine.
+	 * Store 'sv' and everything beneath it, using appropriate routine.
 	 * Abort immediately if we get a non-zero status back.
 	 */
 
@@ -3676,9 +3676,9 @@ static int magic_write(pTHX_ stcxt_t *cxt)
  * Common code for store operations.
  *
  * When memory store is requested (f = NULL) and a non null SV* is given in
- * `res', it is filled with a new SV created out of the memory buffer.
+ * 'res', it is filled with a new SV created out of the memory buffer.
  *
- * It is required to provide a non-null `res' when the operation type is not
+ * It is required to provide a non-null 'res' when the operation type is not
  * dclone() and store() is performed to memory.
  */
 static int do_store(
@@ -3861,7 +3861,7 @@ static SV *retrieve_idx_blessed(pTHX_ stcxt_t *cxt, const char *cname)
 		RLEN(idx);
 
 	/*
-	 * Fetch classname in `aclass'
+	 * Fetch classname in 'aclass'
 	 */
 
 	sva = av_fetch(cxt->aclass, idx, FALSE);
@@ -4062,7 +4062,7 @@ static SV *retrieve_hook(pTHX_ stcxt_t *cxt, const char *cname)
 		I32 idx;
 
 		/*
-		 * Fetch index from `aclass'
+		 * Fetch index from 'aclass'
 		 */
 
 		if (flags & SHF_LARGE_CLASSLEN)
@@ -4250,7 +4250,7 @@ static SV *retrieve_hook(pTHX_ stcxt_t *cxt, const char *cname)
 	}
 
 	/*
-	 * If we don't have an `av' yet, prepare one.
+	 * If we don't have an 'av' yet, prepare one.
 	 * Then insert the frozen string as item [0].
 	 */
 
@@ -5974,7 +5974,7 @@ static SV *do_retrieve(
 	/*
 	 * Prepare context.
 	 *
-	 * Data is loaded into the memory buffer when f is NULL, unless `in' is
+	 * Data is loaded into the memory buffer when f is NULL, unless 'in' is
 	 * also NULL, in which case we're expecting the data to already lie
 	 * in the buffer (dclone case).
 	 */
@@ -6043,7 +6043,7 @@ static SV *do_retrieve(
 	 * Check whether input source is tainted, so that we don't wrongly
 	 * taint perfectly good values...
 	 *
-	 * We assume file input is always tainted.  If both `f' and `in' are
+	 * We assume file input is always tainted.  If both 'f' and 'in' are
 	 * NULL, then we come from dclone, and tainted is already filled in
 	 * the context.  That's a kludge, but the whole dclone() thing is
 	 * already quite a kludge anyway! -- RAM, 15/09/2000.
@@ -6233,7 +6233,7 @@ static SV *dclone(pTHX_ SV *sv)
 	cxt = real_context;					/* And we need this temporary... */
 
 	/*
-	 * Now, `cxt' may refer to a new context.
+	 * Now, 'cxt' may refer to a new context.
 	 */
 
 	ASSERT(!cxt->s_dirty, ("clean context"));
diff --git a/dist/if/if.pm b/dist/if/if.pm
index d321cd6..c04ac6b 100644
--- a/dist/if/if.pm
+++ b/dist/if/if.pm
@@ -4,7 +4,7 @@ $VERSION = '0.0601';
 
 sub work {
   my $method = shift() ? 'import' : 'unimport';
-  die "Too few arguments to `use if' (some code returning an empty list in list context?)"
+  die "Too few arguments to 'use if' (some code returning an empty list in list context?)"
     unless @_ >= 2;
   return unless shift;		# CONDITION
 
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0012-RT-36079-Convert-to.patch
From 14c362e3975992a44fa64b59de5673222c46e3f6 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 20:02:17 -0500
Subject: [PATCH 12/23] [RT #36079] Convert ` to '.

---
 README.tru64 |    2 +-
 sv.h         |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/README.tru64 b/README.tru64
index 109cf5d..81ef9fe 100644
--- a/README.tru64
+++ b/README.tru64
@@ -37,7 +37,7 @@ necessary, and also gives advice on how to raise the process limits.
 Also, Configure might abort with
 
     Build a threading Perl? [n]
-    Configure[2437]: Syntax error at line 1 : `config.sh' is not expected.
+    Configure[2437]: Syntax error at line 1 : 'config.sh' is not expected.
 
 This indicates that Configure is being run with a broken Korn shell
 (even though you think you are using a Bourne shell by using
diff --git a/sv.h b/sv.h
index 8edb42b..360a249 100644
--- a/sv.h
+++ b/sv.h
@@ -1810,7 +1810,7 @@ Like sv_utf8_upgrade, but doesn't do magic on C<sv>
 #else
 #  define SvRELEASE_IVX(sv)   0
 /* This little game brought to you by the need to shut this warning up:
-mg.c: In function `Perl_magic_get':
+mg.c: In function 'Perl_magic_get':
 mg.c:1024: warning: left-hand operand of comma expression has no effect
 */
 #  define SvRELEASE_IVX_(sv)  /**/
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @jkeenan

0015-RT-36079-Convert-to.patch
From b0bf501bfad553e66a82857730054f45d332f6f0 Mon Sep 17 00:00:00 2001
From: jkeenan <[email protected]>
Date: Sat, 19 Nov 2011 20:16:47 -0500
Subject: [PATCH 15/23] [RT #36079] Convert ` to '.

---
 t/op/method.t |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/t/op/method.t b/t/op/method.t
index 5a1c754..7332c3c 100644
--- a/t/op/method.t
+++ b/t/op/method.t
@@ -80,8 +80,8 @@ eval 'no warnings "redefine"; sub B::d {"B::d2"}';	# Import now.
 is(A->d, "B::d2");		# Update hash table;
 
 # What follows is hardly guarantied to work, since the names in scripts
-# are already linked to "pruned" globs. Say, `undef &B::d' if it were
-# after `delete $B::{d}; sub B::d {}' would reach an old subroutine.
+# are already linked to "pruned" globs. Say, 'undef &B::d' if it were
+# after 'delete $B::{d}; sub B::d {}' would reach an old subroutine.
 
 undef &B::d;
 delete $B::{d};
-- 
1.6.3.2

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From @tamias

From 90b297c8805809d3527c0c5711d981771e9ace85 Mon Sep 17 00​:00​:00 2001
From​: jkeenan <jkeenan@​cpan.org>
Date​: Sun, 20 Nov 2011 08​:33​:12 -0500
Subject​: [PATCH 19/23] [RT #36079] Where sensible, replace consecutive single quotation marks with a double quotation mark.

---
dist/B-Deparse/Deparse.pm | 40 ++++++++++++++++++++--------------------
dist/Cwd/Cwd.xs | 2 +-
ext/File-Glob/Glob.pm | 2 +-
ext/File-Glob/bsd_glob.c | 2 +-
ext/SDBM_File/sdbm/README | 26 +++++++++++++-------------
ext/SDBM_File/sdbm/readme.ms | 18 +++++++++---------
ext/Socket/Socket.xs | 2 +-
7 files changed, 46 insertions(+), 46 deletions(-)

This particular patch seems to contain unnecessary changes in indentation.

Also, this change in dist/B-Deparse/Deparse.pm is not correct​:

- for $delim ('/', '"', '#') { # note no ''' -- s''' is special
+ for $delim ('/', '"', '#') { # note no "'' -- s''" is special

It should be​:
  for $delim ('/', '"', '#') { # note no "'" -- s''' is special

Ronald

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2011

From [email protected]

Also, this change in dist/B-Deparse/Deparse.pm is not correct​:

- for $delim ('/', '"', '#') { # note no ''' -- s''' is special
+ for $delim ('/', '"', '#') { # note no "'' -- s''" is special

It should be​:
for $delim ('/', '"', '#') { # note no "'" -- s''' is special

*Very* well-spotted!

--tom

@p5pRT
Copy link
Author

p5pRT commented Nov 21, 2011

From @cpansprout

On Sun Nov 20 15​:21​:21 2011, tom christiansen wrote​:

Also, this change in dist/B-Deparse/Deparse.pm is not correct​:

- for $delim ('/', '"', '#') { # note no ''' -- s''' is special
+ for $delim ('/', '"', '#') { # note no "'' -- s''" is special

It should be​:
for $delim ('/', '"', '#') { # note no "'" -- s''' is special

*Very* well-spotted!

But what colour are the spots?

--

Father Chrysostomos

@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2011

From @cpansprout

On Sun Nov 20 08​:30​:32 2011, jkeenan wrote​:

On Sat Nov 19 22​:07​:57 2011, sprout wrote​:

On Sat Nov 19 19​:29​:17 2011, jkeenan wrote​:

Here is a patch that covers 69 files; there are more to be done.

The patches attached replace the first batch and complete (for all
practical purposes) the process.

If the version number of a module hasn’t changed since the last release,
any change necessitates a version bump.

Done.

git-format-patch files are generally easier to apply.

Supplied.

Thank you. Applied and merged as f6525dd.

I didn’t notice that you had said ‘Done’ above, and I got test failures
half way through and bumped the version numbers myself, before I
realised one of your patches did it, so it doesn’t have you name on it.
(I was basically running tests continuously while reviewing and
applying each patch.)

--

Father Chrysostomos

@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2011

@cpansprout - Status changed from 'open' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant