This file is indexed.

/usr/src/gcc-4.7/debian/patches/libstdc++-man-3cxx.diff is in gcc-4.7-source 4.7.3-12ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
# DP: Install libstdc++ man pages with suffix .3cxx instead of .3

Index: b/src/libstdc++-v3/doc/doxygen/user.cfg.in
===================================================================
--- a/src/libstdc++-v3/doc/doxygen/user.cfg.in
+++ b/src/libstdc++-v3/doc/doxygen/user.cfg.in
@@ -194,8 +194,8 @@
 # You can put \n's in the value part of an alias to insert newlines.
 
 ALIASES                = "doctodo=@todo\nNeeds documentation! See http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html" \
-			 "headername{1}=Instead, include <\1>." \
-			 "headername{2}=Instead, include <\1> or <\2>."
+			 "headername{1}=Instead, include \<\1\>." \
+			 "headername{2}=Instead, include \<\1\> or \<\2\>."
 
 # This tag can be used to specify a number of word-keyword mappings (TCL only).
 # A mapping has the form "name=value". For example adding
@@ -1534,7 +1534,7 @@
 # The MAN_EXTENSION tag determines the extension that is added to
 # the generated man pages (default is the subroutine's section .3)
 
-MAN_EXTENSION          = .3
+MAN_EXTENSION          = .3cxx
 
 # If the MAN_LINKS tag is set to YES and Doxygen generates man output,
 # then it will generate one additional man file for each entity
Index: b/src/libstdc++-v3/scripts/run_doxygen
===================================================================
--- a/src/libstdc++-v3/scripts/run_doxygen
+++ b/src/libstdc++-v3/scripts/run_doxygen
@@ -235,6 +235,9 @@
 if $do_man; then
 echo ::
 echo :: Fixing up the man pages...
+mkdir -p $outdir/man/man3
+mv $outdir/man/man3cxx/* $outdir/man/man3/
+rmdir $outdir/man/man3cxx
 cd $outdir/man/man3
 
 # File names with embedded spaces (EVIL!) need to be....?  renamed or removed?
@@ -256,7 +259,7 @@
 # and I'm off getting coffee then anyhow, so I didn't care enough to make
 # this super-fast.
 g++ ${srcdir}/doc/doxygen/stdheader.cc -o ./stdheader
-problematic=`egrep -l '#include <.*_.*>' [a-z]*.3`
+problematic=`egrep -l '#include <.*_.*>' [a-z]*.3 [a-z]*.3cxx`
 for f in $problematic; do
     # this is also slow, but safe and easy to debug
     oldh=`sed -n '/fC#include </s/.*<\(.*\)>.*/\1/p' $f`
@@ -269,7 +272,7 @@
 # Some of the pages for generated modules have text that confuses certain
 # implementations of man(1), e.g. on GNU/Linux.  We need to have another
 # top-level *roff tag to /stop/ the .SH NAME entry.
-problematic=`egrep --files-without-match '^\.SH SYNOPSIS' [A-Z]*.3`
+problematic=`egrep --files-without-match '^\.SH SYNOPSIS' [A-Z]*.3cxx`
 #problematic='Containers.3 Sequences.3 Assoc_containers.3 Iterator_types.3'
 
 for f in $problematic; do
@@ -283,7 +286,7 @@
 done
 
 # Also, break this (generated) line up.  It's ugly as sin.
-problematic=`grep -l '[^^]Definition at line' *.3`
+problematic=`grep -l '[^^]Definition at line' *.3 *.3cxx`
 for f in $problematic; do
     sed 's/Definition at line/\
 .PP\
@@ -383,8 +386,8 @@
 	 istringstream ostringstream stringstream filebuf ifstream \
 	 ofstream fstream string;
 do
-    echo ".so man3/std::basic_${f}.3" > std::${f}.3
-    echo ".so man3/std::basic_${f}.3" > std::w${f}.3
+    echo ".so man3/std::basic_${f}.3cxx" > std::${f}.3cxx
+    echo ".so man3/std::basic_${f}.3cxx" > std::w${f}.3cxx
 done
 
 echo ::
Index: b/src/libstdc++-v3/include/profile/impl/profiler_algos.h
===================================================================
--- a/src/libstdc++-v3/include/profile/impl/profiler_algos.h
+++ b/src/libstdc++-v3/include/profile/impl/profiler_algos.h
@@ -24,7 +24,7 @@
 /** @file profile/impl/profiler_algos.h
  *  @brief Algorithms used by the profile extension.
  *
- *  This file is needed to avoid including <algorithm> or <bits/stl_algo.h>.
+ *  This file is needed to avoid including \<algorithm\> or \<bits/stl_algo.h\>.
  *  Including those files would result in recursive includes.
  *  These implementations are oversimplified.  In general, efficiency may be
  *  sacrificed to minimize maintenance overhead.
Index: b/src/libstdc++-v3/include/bits/allocator.h
===================================================================
--- a/src/libstdc++-v3/include/bits/allocator.h
+++ b/src/libstdc++-v3/include/bits/allocator.h
@@ -207,7 +207,7 @@
       }
     };
 
-  // Declare uses_allocator so it can be specialized in <queue> etc.
+  // Declare uses_allocator so it can be specialized in \<queue\> etc.
   template<typename, typename>
     struct uses_allocator;
 #endif