[clang] 153d9b9 - Remove unreferenced files from Clang's website

Aaron Ballman via cfe-commits cfe-commits at lists.llvm.org
Thu May 18 08:53:38 PDT 2023


Author: Aaron Ballman
Date: 2023-05-18T11:53:27-04:00
New Revision: 153d9b9371c3adf719cad4307e395692caa752ac

URL: https://github.com/llvm/llvm-project/commit/153d9b9371c3adf719cad4307e395692caa752ac
DIFF: https://github.com/llvm/llvm-project/commit/153d9b9371c3adf719cad4307e395692caa752ac.diff

LOG: Remove unreferenced files from Clang's website

None of these files are referenced by anything else on the website, and
the content for these files is quite dated or experiments that did not
pan out. I used a few search engines to see if others were linking to
this content (esp the libstdc++ patches) and did not find significant
evidence that they were.

Added: 
    

Modified: 
    

Removed: 
    clang/www/carbon-compile.png
    clang/www/clang_video-05-25-2007.html
    clang/www/clang_video-07-25-2007.html
    clang/www/cxx_compatibility.html
    clang/www/demo/DemoInfo.html
    clang/www/demo/cathead.png
    clang/www/demo/index.cgi
    clang/www/demo/syntax.css
    clang/www/demo/what is this directory.txt
    clang/www/feature-compile1.png
    clang/www/feature-compile2.png
    clang/www/feature-memory1.png
    clang/www/libstdc++4.4-clang0x.patch
    clang/www/libstdc++4.6-clang11.patch
    clang/www/libstdc++4.7-clang11.patch


################################################################################
diff  --git a/clang/www/carbon-compile.png b/clang/www/carbon-compile.png
deleted file mode 100644
index e8516c7055bb2..0000000000000
Binary files a/clang/www/carbon-compile.png and /dev/null 
diff er

diff  --git a/clang/www/clang_video-05-25-2007.html b/clang/www/clang_video-05-25-2007.html
deleted file mode 100755
index 4f669f4dbecf1..0000000000000
--- a/clang/www/clang_video-05-25-2007.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<!-- Material used from: HTML 4.01 specs: http://www.w3.org/TR/html401/ -->
-<html>
-<head>
-	<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-	<title>2007 LLVM Developer's Meeting</title>
-	<link type="text/css" rel="stylesheet" href="menu.css">
-	<link type="text/css" rel="stylesheet" href="content.css">
-    <meta http-equiv="refresh" content="0; URL=https://llvm.org/devmtg/2007-05/">
-</head>
-<body>
-	<!--#include virtual="menu.html.incl"-->
-    Redirecting to the new page
-</body>
-</html>

diff  --git a/clang/www/clang_video-07-25-2007.html b/clang/www/clang_video-07-25-2007.html
deleted file mode 100755
index 38661c58b2fc4..0000000000000
--- a/clang/www/clang_video-07-25-2007.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<!-- Material used from: HTML 4.01 specs: http://www.w3.org/TR/html401/ -->
-<html>
-<head>
-	<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-	<title>LLVM 2.0 and Beyond!</title>
-	<link type="text/css" rel="stylesheet" href="menu.css">
-	<link type="text/css" rel="stylesheet" href="content.css">
-    <meta http-equiv="refresh" content="0; URL=https://llvm.org/devmtg/2007-05/">
-</head>
-<body>
-	<!--#include virtual="menu.html.incl"-->
-    Redirecting to the new page
-</body>
-</html>

diff  --git a/clang/www/cxx_compatibility.html b/clang/www/cxx_compatibility.html
deleted file mode 100755
index 1dfb492587013..0000000000000
--- a/clang/www/cxx_compatibility.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
-          "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-<meta HTTP-EQUIV="REFRESH" content="5; url=compatibility.html#c++">
-  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-  <title>Clang - C++ Compatibility</title>
-  <link type="text/css" rel="stylesheet" href="menu.css">
-  <link type="text/css" rel="stylesheet" href="content.css">
-  <style type="text/css">
-</style>
-</head>
-<body>
-
-<!--#include virtual="menu.html.incl"-->
-
-<div id="content">
-
-<!-- ======================================================================= -->
-<h1>Clang's C++ Compatibility</h1>
-<!-- ======================================================================= -->
-
-  <p>The Clang C++ compatibility page has moved. You will be directed <a href="compatibility.html#c++">to its new home</a> in 5 seconds.</p>
-
-</div>
-</body>
-</html>

diff  --git a/clang/www/demo/DemoInfo.html b/clang/www/demo/DemoInfo.html
deleted file mode 100644
index 9656ba7afc094..0000000000000
--- a/clang/www/demo/DemoInfo.html
+++ /dev/null
@@ -1,82 +0,0 @@
-
-<html>
-<head>
-<title>
-Demo page information
-</title>
-</head>
-
-<body>
-
-<h1>Demo page information</h1>
-
-<p>Press "back" or <a href=".">click here</a> to return to the demo
-page.</p>
-
-<h2><a name="hints">Hints and Advice</a></h2>
-
-<ul>
-<li>The generated LLVM code will be easier to read if
-you use stdio (e.g., printf) than iostreams (e.g., std::cout).</li>
-
-<li>Unused inline functions and methods are not generated.  Instead
-of '<tt>class foo { void bar() {}};</tt>',
-try writing '<tt>class foo { void bar(); }; void foo::bar() {}</tt>'.</li>
-
-<li>If you want to try out a file that uses non-standard header files,  you should
-  preprocess it (e.g., with the <tt>-save-temps</tt> or <tt>-E</tt> options to
-  <tt>gcc</tt>) then upload the result.</li>
-
-</ul>
-
-
-<h2><a name="demangle">Demangle C++ names with C++ filt</a></h2>
-
-<p>
-Select this option if you want to run the output LLVM IR through "c++filt",
-which converts 'mangled' C++ names to their unmangled version.
-Note that LLVM code produced will not be lexically valid, but it will
-be easier to understand.
-</p>
-
-<h2><a name="lto">Run link-time optimizer</a></h2>
-
-<p>
-Select this option to run the LLVM link-time optimizer, which is designed to
-optimize across files in your application.  Since the demo page doesn't allow
-you to upload multiple files at once, and does not link in any libraries, we
-configured the demo page optimizer to assume there are no calls
-coming in from outside the source file, allowing it to optimize more
-aggressively.</p>
-
-<p>Note that you have to define 'main' in your program for this
-to make much of a 
diff erence.
-</p>
-
-<h2><a name="stats">Show detailed pass statistics</a></h2>
-
-<p>
-Select this option to enable compilation timings and statistics from various
-optimizers.</p>
-
-
-<h2><a name="bcanalyzer">Analyze generated bytecode</a></h2>
-
-<p>
-Select this option to run the <a
-href="https://llvm.org/docs/CommandGuide/llvm-bcanalyzer.html">llvm-bcanalyzer</a> tool
-on the generated bytecode, which introspects into the format of the .bc file
-itself.  </p>
-
-
-<h2><a name="llvm2cpp">Show C++ API code</a></h2>
-
-<p>
-Select this option to run the <a
-href="https://llvm.org/cmds/llvm2cpp.html">llvm2cpp</a> tool
-on the generated bytecode, which auto generates the C++ API calls that could
-be used to create the .bc file.
-</p>
-
-</body>
-</html>

diff  --git a/clang/www/demo/cathead.png b/clang/www/demo/cathead.png
deleted file mode 100644
index 3bf1a45ec6f37..0000000000000
Binary files a/clang/www/demo/cathead.png and /dev/null 
diff er

diff  --git a/clang/www/demo/index.cgi b/clang/www/demo/index.cgi
deleted file mode 100644
index d20a3f9474b5f..0000000000000
--- a/clang/www/demo/index.cgi
+++ /dev/null
@@ -1,462 +0,0 @@
-#!/usr/dcs/software/supported/bin/perl
-# LLVM Web Demo script
-#
-
-use strict;
-use CGI;
-use POSIX;
-use Mail::Send;
-use warnings;
-
-$| = 1;
-
-my $ROOT = "/tmp/webcompile";
-#my $ROOT = "/home/vadve/lattner/webcompile";
-
-open( STDERR, ">&STDOUT" ) or die "can't redirect stderr to stdout";
-
-if ( !-d $ROOT ) { mkdir( $ROOT, 0777 ); }
-
-my $LOGFILE         = "$ROOT/log.txt";
-my $FORM_URL        = 'index.cgi';
-my $MAILADDR        = 'sabre at nondot.org';
-my $CONTACT_ADDRESS = 'Questions or comments?  Discuss on the <a href="https://discourse.llvm.org">LLVM forum</a>.';
-my $LOGO_IMAGE_URL  = 'cathead.png';
-my $TIMEOUTAMOUNT   = 20;
-$ENV{'LD_LIBRARY_PATH'} = '/home/vadve/shared/localtools/fc1/lib/';
-
-my @PREPENDPATHDIRS =
-  (  
-    '/home/vadve/shared/llvm-gcc4.0-2.1/bin/',
-    '/home/vadve/shared/llvm-2.1/Release/bin');
-
-my $defaultsrc = "#include <stdio.h>\n#include <stdlib.h>\n\n" .
-                 "int power(int X) {\n  if (X == 0) return 1;\n" .
-                 "  return X*power(X-1);\n}\n\n" .
-                 "int main(int argc, char **argv) {\n" .
-                 "  printf(\"%d\\n\", power(atoi(argv[0])));\n}\n";
-
-sub getname {
-    my ($extension) = @_;
-    for ( my $count = 0 ; ; $count++ ) {
-        my $name =
-          sprintf( "$ROOT/_%d_%d%s", $$, $count, $extension );
-        if ( !-f $name ) { return $name; }
-    }
-}
-
-my $c;
-
-sub barf {
-    print "<b>", @_, "</b>\n";
-    print $c->end_html;
-    system("rm -f $ROOT/locked");
-    exit 1;
-}
-
-sub writeIntoFile {
-    my $extension = shift @_;
-    my $contents  = join "", @_;
-    my $name      = getname($extension);
-    local (*FILE);
-    open( FILE, ">$name" ) or barf("Can't write to $name: $!");
-    print FILE $contents;
-    close FILE;
-    return $name;
-}
-
-sub addlog {
-    my ( $source, $pid, $result ) = @_;
-    open( LOG, ">>$LOGFILE" );
-    my $time       = scalar localtime;
-    my $remotehost = $ENV{'REMOTE_ADDR'};
-    print LOG "[$time] [$remotehost]: $pid\n";
-    print LOG "<<<\n$source\n>>>\nResult is: <<<\n$result\n>>>\n";
-    close LOG;
-}
-
-sub dumpFile {
-    my ( $header, $file ) = @_;
-    my $result;
-    open( FILE, "$file" ) or barf("Can't read $file: $!");
-    while (<FILE>) {
-        $result .= $_;
-    }
-    close FILE;
-    my $UnhilightedResult = $result;
-    my $HtmlResult        =
-      "<h3>$header</h3>\n<pre>\n" . $c->escapeHTML($result) . "\n</pre>\n";
-    if (wantarray) {
-        return ( $UnhilightedResult, $HtmlResult );
-    }
-    else {
-        return $HtmlResult;
-    }
-}
-
-sub syntaxHighlightLLVM {
-  my ($input) = @_;
-  $input =~ s@\b(void|i8|i1|i16|i32|i64|float|double|type|label|opaque)\b@<span class="llvm_type">$1</span>@g;
-  $input =~ s@\b(add|sub|mul|div|rem|and|or|xor|setne|seteq|setlt|setgt|setle|setge|phi|tail|call|cast|to|shl|shr|vaarg|vanext|ret|br|switch|invoke|unwind|malloc|alloca|free|load|store|getelementptr|begin|end|true|false|declare|global|constant|const|internal|uninitialized|external|implementation|linkonce|weak|appending|null|to|except|not|target|endian|pointersize|big|little|volatile)\b@<span class="llvm_keyword">$1</span>@g;
-
-  # Add links to the FAQ.
-  $input =~ s@(_ZNSt8ios_base4Init[DC]1Ev)@<a href="../docs/FAQ.html#iosinit">$1</a>@g;
-  $input =~ s@\bundef\b@<a href="../docs/FAQ.html#undef">undef</a>@g;
-  return $input;
-}
-
-sub mailto {
-    my ( $recipient, $body ) = @_;
-    my $msg =
-      new Mail::Send( Subject => "LLVM Demo Page Run", To => $recipient );
-    my $fh = $msg->open();
-    print $fh $body;
-    $fh->close();
-}
-
-$c = new CGI;
-print $c->header;
-
-print <<EOF;
-<html>
-<head>
-  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-  <title>Try out LLVM in your browser!</title>
-  <style>
-    \@import url("syntax.css");
-    \@import url("http://llvm.org/llvm.css");
-  </style>
-</head>
-<body leftmargin="10" marginwidth="10">
-
-<div class="www_sectiontitle">
-  Try out LLVM in your browser!
-</div>
-
-<table border=0><tr><td>
-<img align=right width=100 height=111 src="$LOGO_IMAGE_URL">
-</td><td>
-EOF
-
-if ( -f "$ROOT/locked" ) {
-  my ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$locktime) = 
-    stat("$ROOT/locked");
-  my $currtime = time();
-  if ($locktime + 60 > $currtime) {
-    print "This page is already in use by someone else at this ";
-    print "time, try reloading in a second or two.  Meow!</td></tr></table>'\n";
-    exit 0;
-  }
-}
-
-system("touch $ROOT/locked");
-
-print <<END;
-Bitter Melon the cat says, paste a C/C++ program in the text box or upload
-one from your computer, and you can see LLVM compile it, meow!!
-</td></tr></table><p>
-END
-
-print $c->start_multipart_form( 'POST', $FORM_URL );
-
-my $source = $c->param('source');
-
-
-# Start the user out with something valid if no code.
-$source = $defaultsrc if (!defined($source));
-
-print '<table border="0"><tr><td>';
-
-print "Type your source code in below: (<a href='DemoInfo.html#hints'>hints and 
-advice</a>)<br>\n";
-
-print $c->textarea(
-    -name    => "source",
-    -rows    => 16,
-    -columns => 60,
-    -default => $source
-), "<br>";
-
-print "Or upload a file: ";
-print $c->filefield( -name => 'uploaded_file', -default => '' );
-
-print "<p />\n";
-
-
-print '<p></td><td valign=top>';
-
-print "<center><h3>General Options</h3></center>";
-
-print "Source language: ",
-  $c->radio_group(
-    -name    => 'language',
-    -values  => [ 'C', 'C++' ],
-    -default => 'C'
-  ), "<p>";
-
-print $c->checkbox(
-    -name  => 'linkopt',
-    -label => 'Run link-time optimizer',
-    -checked => 'checked'
-  ),' <a href="DemoInfo.html#lto">?</a><br>';
-
-print $c->checkbox(
-    -name  => 'showstats',
-    -label => 'Show detailed pass statistics'
-  ), ' <a href="DemoInfo.html#stats">?</a><br>';
-
-print $c->checkbox(
-    -name  => 'cxxdemangle',
-    -label => 'Demangle C++ names'
-  ),' <a href="DemoInfo.html#demangle">?</a><p>';
-
-
-print "<center><h3>Output Options</h3></center>";
-
-print $c->checkbox(
-    -name => 'showbcanalysis',
-    -label => 'Show detailed bytecode analysis'
-  ),' <a href="DemoInfo.html#bcanalyzer">?</a><br>';
-
-print $c->checkbox(
-    -name => 'showllvm2cpp',
-    -label => 'Show LLVM C++ API code'
-  ), ' <a href="DemoInfo.html#llvm2cpp">?</a>';
-
-print "</td></tr></table>";
-
-print "<center>", $c->submit(-value=> 'Compile Source Code'), 
-      "</center>\n", $c->endform;
-
-print "\n<p>If you have questions about the LLVM code generated by the
-front-end, please check the <a href='/docs/FAQ.html#cfe_code'>FAQ</a> and
-the demo page <a href='DemoInfo.html#hints'>hints section</a>.
-</p>\n";
-
-$ENV{'PATH'} = ( join ( ':', @PREPENDPATHDIRS ) ) . ":" . $ENV{'PATH'};
-
-sub sanitychecktools {
-    my $sanitycheckfail = '';
-
-    # insert tool-specific sanity checks here
-    $sanitycheckfail .= ' llvm-dis'
-      if `llvm-dis --help 2>&1` !~ /ll disassembler/;
-
-    $sanitycheckfail .= ' llvm-gcc'
-      if ( `llvm-gcc --version 2>&1` !~ /Free Software Foundation/ );
-
-    $sanitycheckfail .= ' llvm-ld'
-      if `llvm-ld --help 2>&1` !~ /llvm linker/;
-
-    $sanitycheckfail .= ' llvm-bcanalyzer'
-      if `llvm-bcanalyzer --help 2>&1` !~ /bcanalyzer/;
-
-    barf(
-"<br/>The demo page is currently unavailable. [tools: ($sanitycheckfail ) failed sanity check]"
-      )
-      if $sanitycheckfail;
-}
-
-sanitychecktools();
-
-sub try_run {
-    my ( $program, $commandline, $outputFile ) = @_;
-    my $retcode = 0;
-
-    eval {
-        local $SIG{ALRM} = sub { die "timeout"; };
-        alarm $TIMEOUTAMOUNT;
-        $retcode = system($commandline);
-        alarm 0;
-    };
-    if ( $@ and $@ =~ /timeout/ ) { 
-      barf("Program $program took too long, compile time limited for the web script, sorry!\n"); 
-    }
-    if ( -s $outputFile ) {
-        print scalar dumpFile( "Output from $program", $outputFile );
-    }
-    #print "<p>Finished dumping command output.</p>\n";
-    if ( WIFEXITED($retcode) && WEXITSTATUS($retcode) != 0 ) {
-        barf(
-"$program exited with an error. Please correct source and resubmit.<p>\n" .
-"Please note that this form only allows fully formed and correct source" .
-" files.  It will not compile fragments of code.<p>"
-        );
-    }
-    if ( WIFSIGNALED($retcode) != 0 ) {
-        my $sig = WTERMSIG($retcode);
-        barf(
-            "Ouch, $program caught signal $sig. Sorry, better luck next time!\n"
-        );
-    }
-}
-
-my %suffixes = (
-    'Java'             => '.java',
-    'JO99'             => '.jo9',
-    'C'                => '.c',
-    'C++'              => '.cc',
-    'Stacker'          => '.st',
-    'preprocessed C'   => '.i',
-    'preprocessed C++' => '.ii'
-);
-my %languages = (
-    '.jo9'  => 'JO99',
-    '.java' => 'Java',
-    '.c'    => 'C',
-    '.i'    => 'preprocessed C',
-    '.ii'   => 'preprocessed C++',
-    '.cc'   => 'C++',
-    '.cpp'  => 'C++',
-    '.st'   => 'Stacker'
-);
-
-my $uploaded_file_name = $c->param('uploaded_file');
-if ($uploaded_file_name) {
-    if ($source) {
-        barf(
-"You must choose between uploading a file and typing code in. You can't do both at the same time."
-        );
-    }
-    $uploaded_file_name =~ s/^.*(\.[A-Za-z]+)$/$1/;
-    my $language = $languages{$uploaded_file_name};
-    $c->param( 'language', $language );
-
-    print "<p>Processing uploaded file. It looks like $language.</p>\n";
-    my $fh = $c->upload('uploaded_file');
-    if ( !$fh ) {
-        barf( "Error uploading file: " . $c->cgi_error );
-    }
-    while (<$fh>) {
-        $source .= $_;
-    }
-    close $fh;
-}
-
-if ($c->param('source')) {
-    print $c->hr;
-    my $extension = $suffixes{ $c->param('language') };
-    barf "Unknown language; can't compile\n" unless $extension;
-
-    # Add a newline to the source here to avoid a warning from gcc.
-    $source .= "\n";
-
-    # Avoid security hole due to #including bad stuff.
-    $source =~
-s@(\n)?#include.*[<"](.*\.\..*)[">].*\n@$1#error "invalid #include file $2 detected"\n at g;
-
-    my $inputFile = writeIntoFile( $extension, $source );
-    my $pid       = $$;
-
-    my $bytecodeFile = getname(".bc");
-    my $outputFile   = getname(".llvm-gcc.out");
-    my $timerFile    = getname(".llvm-gcc.time");
-
-    my $stats = '';
-    if ( $extension eq ".st" ) {
-      $stats = "-stats -time-passes "
-	if ( $c->param('showstats') );
-      try_run( "llvm Stacker front-end (stkrc)",
-        "stkrc $stats -o $bytecodeFile $inputFile > $outputFile 2>&1",
-        $outputFile );
-    } else {
-      #$stats = "-Wa,--stats,--time-passes,--info-output-file=$timerFile"
-      $stats = "-ftime-report"
-	if ( $c->param('showstats') );
-      try_run( "llvm C/C++ front-end (llvm-gcc)",
-	"llvm-gcc -emit-llvm -W -Wall -O2 $stats -o $bytecodeFile -c $inputFile > $outputFile 2>&1",
-        $outputFile );
-    }
-
-    if ( $c->param('showstats') && -s $timerFile ) {
-        my ( $UnhilightedResult, $HtmlResult ) =
-          dumpFile( "Statistics for front-end compilation", $timerFile );
-        print "$HtmlResult\n";
-    }
-
-    if ( $c->param('linkopt') ) {
-        my $stats      = '';
-        my $outputFile = getname(".gccld.out");
-        my $timerFile  = getname(".gccld.time");
-        $stats = "--stats --time-passes --info-output-file=$timerFile"
-          if ( $c->param('showstats') );
-        my $tmpFile = getname(".bc");
-        try_run(
-            "optimizing linker (llvm-ld)",
-"llvm-ld $stats -o=$tmpFile $bytecodeFile > $outputFile 2>&1",
-            $outputFile
-        );
-        system("mv $tmpFile.bc $bytecodeFile");
-        system("rm $tmpFile");
-
-        if ( $c->param('showstats') && -s $timerFile ) {
-            my ( $UnhilightedResult, $HtmlResult ) =
-              dumpFile( "Statistics for optimizing linker", $timerFile );
-            print "$HtmlResult\n";
-        }
-    }
-
-    print " Bytecode size is ", -s $bytecodeFile, " bytes.\n";
-
-    my $disassemblyFile = getname(".ll");
-    try_run( "llvm-dis",
-        "llvm-dis -o=$disassemblyFile $bytecodeFile > $outputFile 2>&1",
-        $outputFile );
-
-    if ( $c->param('cxxdemangle') ) {
-        print " Demangling disassembler output.\n";
-        my $tmpFile = getname(".ll");
-        system("c++filt < $disassemblyFile > $tmpFile 2>&1");
-        system("mv $tmpFile $disassemblyFile");
-    }
-
-    my ( $UnhilightedResult, $HtmlResult );
-    if ( -s $disassemblyFile ) {
-        ( $UnhilightedResult, $HtmlResult ) =
-          dumpFile( "Output from LLVM disassembler", $disassemblyFile );
-        print syntaxHighlightLLVM($HtmlResult);
-    }
-    else {
-        print "<p>Hmm, that's weird, llvm-dis didn't produce any output.</p>\n";
-    }
-
-    if ( $c->param('showbcanalysis') ) {
-      my $analFile = getname(".bca");
-      try_run( "llvm-bcanalyzer", "llvm-bcanalyzer $bytecodeFile > $analFile 2>&1", 
-        $analFile);
-    }
-    if ($c->param('showllvm2cpp') ) {
-      my $l2cppFile = getname(".l2cpp");
-      try_run("llvm2cpp","llvm2cpp $bytecodeFile -o $l2cppFile 2>&1",
-        $l2cppFile);
-    }
-
-    # Get the source presented by the user to CGI, convert newline sequences to simple \n.
-    my $actualsrc = $c->param('source');
-    $actualsrc =~ s/\015\012/\n/go;
-    # Don't log this or mail it if it is the default code.
-    if ($actualsrc ne $defaultsrc) {
-    addlog( $source, $pid, $UnhilightedResult );
-
-    my ( $ip, $host, $lg, $lines );
-    chomp( $lines = `wc -l < $inputFile` );
-    $lg = $c->param('language');
-    $ip = $c->remote_addr();
-    chomp( $host = `host $ip` ) if $ip;
-    mailto( $MAILADDR,
-        "--- Query: ---\nFrom: ($ip) $host\nInput: $lines lines of $lg\n"
-          . "C++ demangle = "
-          . ( $c->param('cxxdemangle') ? 1 : 0 )
-          . ", Link opt = "
-          . ( $c->param('linkopt') ? 1 : 0 ) . "\n\n"
-          . ", Show stats = "
-          . ( $c->param('showstats') ? 1 : 0 ) . "\n\n"
-          . "--- Source: ---\n$source\n"
-          . "--- Result: ---\n$UnhilightedResult\n" );
-    }
-    unlink( $inputFile, $bytecodeFile, $outputFile, $disassemblyFile );
-}
-
-print $c->hr, "<address>$CONTACT_ADDRESS</address>", $c->end_html;
-system("rm $ROOT/locked");
-exit 0;

diff  --git a/clang/www/demo/syntax.css b/clang/www/demo/syntax.css
deleted file mode 100644
index 90daf5fcbd1fc..0000000000000
--- a/clang/www/demo/syntax.css
+++ /dev/null
@@ -1,4 +0,0 @@
-/* LLVM syntax highlighting for the Web */
-
-.llvm_type    { font-style: oblique; color: green }
-.llvm_keyword { font-weight: bold; color: blue }

diff  --git a/clang/www/demo/what is this directory.txt b/clang/www/demo/what is this directory.txt
deleted file mode 100644
index a1306ac0dc5b8..0000000000000
--- a/clang/www/demo/what is this directory.txt	
+++ /dev/null
@@ -1,15 +0,0 @@
-This is for the LLVM+Clang browser based demo.
-It is supposed to work like the LLVM+GCC demo here: http://llvm.org/demo/ but for the BSD licensed Clang instead.
-
-Perhaps it could also be used for getting crash information and details on errors....  I'm not sure if this would require some major changes or not to report this info.  Maybe also adding ways that people can use it to test for errors and a way to report such errors would also be good.
-
-Status:
-Anyways, right now, these file a basically just a copy of the LLVM+GCC demo (no changes have been made).  The files don't even work right in this location on the server.  As such, someone will need to edit the file or rewrite it.
-
-If nobody in the LLVM community has the skills, one suggestion would be to post a request on a friendly Perl forum and see if anybody might be interested in taking on the challenge.
-
-Alternatively, you could try a PHP, Python, Ruby, or Lisp mailing list and see if there are any takers who would be interested (and willing to do a rewrite to their language of choice).
-
---
-BTW, once this feature was working, my intention was to link to it from the index.html page in the section entitled:
-Try Clang
\ No newline at end of file

diff  --git a/clang/www/feature-compile1.png b/clang/www/feature-compile1.png
deleted file mode 100644
index cec7c48514929..0000000000000
Binary files a/clang/www/feature-compile1.png and /dev/null 
diff er

diff  --git a/clang/www/feature-compile2.png b/clang/www/feature-compile2.png
deleted file mode 100644
index 0eb93001ffca9..0000000000000
Binary files a/clang/www/feature-compile2.png and /dev/null 
diff er

diff  --git a/clang/www/feature-memory1.png b/clang/www/feature-memory1.png
deleted file mode 100644
index 29368aa838208..0000000000000
Binary files a/clang/www/feature-memory1.png and /dev/null 
diff er

diff  --git a/clang/www/libstdc++4.4-clang0x.patch b/clang/www/libstdc++4.4-clang0x.patch
deleted file mode 100644
index db43583b3fc2a..0000000000000
--- a/clang/www/libstdc++4.4-clang0x.patch
+++ /dev/null
@@ -1,608 +0,0 @@
-This patch was generated from the headers installed by MacPorts
-gcc-4.4 on OS X 10.6.  You can apply it there with
-`cd /opt/local/include/gcc44/c++ ; sudo patch -p1 <this_patch`, or similar
-on other operating systems.  Mail cfe-dev if you find other problems in the
-standard headers.
-
-This patch is offered under the same modified GPLv3 as libstdc++-4.4.
-
-
diff  -ur a/bits/forward_list.h b/bits/forward_list.h
---- a/bits/forward_list.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/forward_list.h	2011-05-02 23:51:33.000000000 -0700
-@@ -983,7 +983,7 @@
-        *  function.
-        */
-       void
--      swap(forward_list&& __list)
-+      swap(forward_list& __list)
-       { _Node_base::swap(this->_M_impl._M_head, __list._M_impl._M_head); }
- 
-       /**
-
diff  -ur a/bits/move.h b/bits/move.h
---- a/bits/move.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/move.h	2011-03-29 10:33:39.000000000 -0700
-@@ -48,13 +48,35 @@
- 
-   template<typename _Tp>
-     inline _Tp&&
--    forward(typename std::identity<_Tp>::type&& __t)
-+    forward(typename std::remove_reference<_Tp>::type& __t)
-+#ifdef __clang__
-+    { return static_cast<_Tp&&>(__t); }
-+#else
-     { return __t; }
-+#endif
-+
-+  template<typename _Tp>
-+    inline _Tp&&
-+    forward(typename std::remove_reference<_Tp>::type&& __t)
-+    {
-+#ifdef __clang__
-+      static_assert(!std::is_lvalue_reference<_Tp>::value,
-+                    "Can't instantiate this forward() with an"
-+                    " lvalue reference type.");
-+      return static_cast<_Tp&&>(__t);
-+#else
-+      return __t;
-+#endif
-+    }
- 
-   template<typename _Tp>
-     inline typename std::remove_reference<_Tp>::type&&
-     move(_Tp&& __t)
-+#ifdef __clang__
-+    { return static_cast<typename std::remove_reference<_Tp>::type&&>(__t); }
-+#else
-     { return __t; }
-+#endif
- 
- _GLIBCXX_END_NAMESPACE
- 
-
diff  -ur a/bits/shared_ptr.h b/bits/shared_ptr.h
---- a/bits/shared_ptr.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/shared_ptr.h	2011-03-31 16:40:45.000000000 -0700
-@@ -833,7 +833,7 @@
-       { return _M_refcount._M_get_use_count(); }
- 
-       void
--      swap(__shared_ptr<_Tp, _Lp>&& __other) // never throws
-+      swap(__shared_ptr<_Tp, _Lp>& __other) // never throws
-       {
- 	std::swap(_M_ptr, __other._M_ptr);
- 	_M_refcount._M_swap(__other._M_refcount);
-@@ -943,16 +943,6 @@
-     swap(__shared_ptr<_Tp, _Lp>& __a, __shared_ptr<_Tp, _Lp>& __b)
-     { __a.swap(__b); }
- 
--  template<typename _Tp, _Lock_policy _Lp>
--    inline void
--    swap(__shared_ptr<_Tp, _Lp>&& __a, __shared_ptr<_Tp, _Lp>& __b)
--    { __a.swap(__b); }
--
--  template<typename _Tp, _Lock_policy _Lp>
--    inline void
--    swap(__shared_ptr<_Tp, _Lp>& __a, __shared_ptr<_Tp, _Lp>&& __b)
--    { __a.swap(__b); }
--
-   // 2.2.3.9 shared_ptr casts
-   /** @warning The seemingly equivalent
-    *           <code>shared_ptr<_Tp, _Lp>(static_cast<_Tp*>(__r.get()))</code>
-@@ -1372,16 +1362,6 @@
-     swap(shared_ptr<_Tp>& __a, shared_ptr<_Tp>& __b)
-     { __a.swap(__b); }
- 
--  template<typename _Tp>
--    inline void
--    swap(shared_ptr<_Tp>&& __a, shared_ptr<_Tp>& __b)
--    { __a.swap(__b); }
--
--  template<typename _Tp>
--    inline void
--    swap(shared_ptr<_Tp>& __a, shared_ptr<_Tp>&& __b)
--    { __a.swap(__b); }
--
-   // 20.8.13.2.10 shared_ptr casts.
-   template<typename _Tp, typename _Tp1>
-     inline shared_ptr<_Tp>
-
diff  -ur a/bits/stl_bvector.h b/bits/stl_bvector.h
---- a/bits/stl_bvector.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_bvector.h	2011-05-02 23:34:46.000000000 -0700
-@@ -743,11 +743,7 @@
-     }
- 
-     void
--#ifdef __GXX_EXPERIMENTAL_CXX0X__
--    swap(vector&& __x)
--#else
-     swap(vector& __x)
--#endif
-     {
-       std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
-       std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
-
diff  -ur a/bits/stl_deque.h b/bits/stl_deque.h
---- a/bits/stl_deque.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_deque.h	2011-03-29 10:33:39.000000000 -0700
-@@ -1395,11 +1395,7 @@
-        *  std::swap(d1,d2) will feed to this function.
-        */
-       void
--#ifdef __GXX_EXPERIMENTAL_CXX0X__
--      swap(deque&& __x)
--#else
-       swap(deque& __x)
--#endif
-       {
- 	std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
- 	std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
-
diff  -ur a/bits/stl_iterator.h b/bits/stl_iterator.h
---- a/bits/stl_iterator.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_iterator.h	2011-03-29 10:33:39.000000000 -0700
-@@ -913,7 +913,7 @@
- 
-       reference
-       operator*() const
--      { return *_M_current; }
-+      { return std::move(*_M_current); }
- 
-       pointer
-       operator->() const
-
diff  -ur a/bits/stl_list.h b/bits/stl_list.h
---- a/bits/stl_list.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_list.h	2011-03-29 10:33:39.000000000 -0700
-@@ -1106,11 +1106,7 @@
-        *  function.
-        */
-       void
--#ifdef __GXX_EXPERIMENTAL_CXX0X__
--      swap(list&& __x)
--#else
-       swap(list& __x)
--#endif
-       {
- 	_List_node_base::swap(this->_M_impl._M_node, __x._M_impl._M_node);
- 
-@@ -1160,6 +1156,12 @@
- 	  }
-       }
- 
-+#ifdef __GXX_EXPERIMENTAL_CXX0X__
-+      void
-+      splice(iterator __position, list& __x)
-+      { splice(__position, std::move(__x)); }
-+#endif
-+
-       /**
-        *  @brief  Insert element from another %list.
-        *  @param  position  Iterator referencing the element to insert before.
-@@ -1187,6 +1189,12 @@
- 	this->_M_transfer(__position, __i, __j);
-       }
- 
-+#ifdef __GXX_EXPERIMENTAL_CXX0X__
-+      void
-+      splice(iterator __position, list& __x, iterator __i)
-+      { splice(__position, std::move(__x), __i); }
-+#endif
-+
-       /**
-        *  @brief  Insert range from another %list.
-        *  @param  position  Iterator referencing the element to insert before.
-@@ -1217,6 +1225,13 @@
- 	  }
-       }
- 
-+#ifdef __GXX_EXPERIMENTAL_CXX0X__
-+      void
-+      splice(iterator __position, list& __x, iterator __first,
-+	     iterator __last)
-+      { splice(__position, std::move(__x), __first, __last); }
-+#endif
-+
-       /**
-        *  @brief  Remove all elements equal to value.
-        *  @param  value  The value to remove.
-@@ -1287,6 +1302,10 @@
-       void
- #ifdef __GXX_EXPERIMENTAL_CXX0X__
-       merge(list&& __x);
-+
-+      void
-+      merge(list& __x)
-+      { merge(std::move(__x)); }
- #else
-       merge(list& __x);
- #endif
-@@ -1307,6 +1326,11 @@
-         void
- #ifdef __GXX_EXPERIMENTAL_CXX0X__
-         merge(list&&, _StrictWeakOrdering);
-+
-+      template<typename _StrictWeakOrdering>
-+        void
-+        merge(list& __l, _StrictWeakOrdering __comp)
-+        { merge(std::move(__l), __comp); }
- #else
-         merge(list&, _StrictWeakOrdering);
- #endif
-
diff  -ur a/bits/stl_map.h b/bits/stl_map.h
---- a/bits/stl_map.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_map.h	2011-03-29 10:33:39.000000000 -0700
-@@ -608,11 +608,7 @@
-        *  that std::swap(m1,m2) will feed to this function.
-        */
-       void
--#ifdef __GXX_EXPERIMENTAL_CXX0X__
--      swap(map&& __x)
--#else
-       swap(map& __x)
--#endif
-       { _M_t.swap(__x._M_t); }
- 
-       /**
-
diff  -ur a/bits/stl_multimap.h b/bits/stl_multimap.h
---- a/bits/stl_multimap.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_multimap.h	2011-03-29 10:33:39.000000000 -0700
-@@ -544,11 +544,7 @@
-        *  std::swap(m1,m2) will feed to this function.
-        */
-       void
--#ifdef __GXX_EXPERIMENTAL_CXX0X__
--      swap(multimap&& __x)
--#else
-       swap(multimap& __x)
--#endif
-       { _M_t.swap(__x._M_t); }
- 
-       /**
-
diff  -ur a/bits/stl_multiset.h b/bits/stl_multiset.h
---- a/bits/stl_multiset.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_multiset.h	2011-03-29 10:33:39.000000000 -0700
-@@ -376,11 +376,7 @@
-        *  std::swap(s1,s2) will feed to this function.
-        */
-       void
--#ifdef __GXX_EXPERIMENTAL_CXX0X__
--      swap(multiset&& __x)
--#else
-       swap(multiset& __x)
--#endif
-       { _M_t.swap(__x._M_t); }
- 
-       // insert/erase
-
diff  -ur a/bits/stl_pair.h b/bits/stl_pair.h
---- a/bits/stl_pair.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_pair.h	2011-03-29 10:33:39.000000000 -0700
-@@ -84,10 +84,21 @@
-       : first(__a), second(__b) { }
- 
- #ifdef __GXX_EXPERIMENTAL_CXX0X__
--      template<class _U1, class _U2>
-+      template<class _U1, class = typename
-+	       std::enable_if<std::is_convertible<_U1, _T1>::value>::type>
-+	pair(_U1&& __x, const _T2& __y)
-+	: first(std::forward<_U1>(__x)), second(__y) { }
-+
-+      template<class _U2, class = typename
-+	       std::enable_if<std::is_convertible<_U2, _T2>::value>::type>
-+	pair(const _T1& __x, _U2&& __y)
-+	: first(__x), second(std::forward<_U2>(__y)) { }
-+
-+      template<class _U1, class _U2, class = typename
-+	       std::enable_if<std::is_convertible<_U1, _T1>::value
-+			      && std::is_convertible<_U2, _T2>::value>::type>
-         pair(_U1&& __x, _U2&& __y)
--	: first(std::forward<_U1>(__x)),
--	  second(std::forward<_U2>(__y)) { }
-+	: first(std::forward<_U1>(__x)), second(std::forward<_U2>(__y)) { }
- 
-       pair(pair&& __p)
-       : first(std::move(__p.first)),
-@@ -107,11 +118,19 @@
- 	  second(std::move(__p.second)) { }
- 
-       // http://gcc.gnu.org/ml/libstdc++/2007-08/msg00052.html
-+
-+#if 0
-+      // This constructor is incompatible with libstdc++-4.6, and it
-+      // interferes with passing NULL pointers to the 2-argument
-+      // constructors, so we disable it.  map::emplace isn't
-+      // implemented in libstdc++-4.4 anyway, and that's what this
-+      // constructor was here for.
-       template<class _U1, class _Arg0, class... _Args>
-         pair(_U1&& __x, _Arg0&& __arg0, _Args&&... __args)
- 	: first(std::forward<_U1>(__x)),
- 	  second(std::forward<_Arg0>(__arg0),
- 		 std::forward<_Args>(__args)...) { }
-+#endif
- 
-       pair&
-       operator=(pair&& __p)
-@@ -131,7 +150,7 @@
- 	}
- 
-       void
--      swap(pair&& __p)
-+      swap(pair& __p)
-       {
- 	using std::swap;
- 	swap(first, __p.first);
-
diff  -ur a/bits/stl_queue.h b/bits/stl_queue.h
---- a/bits/stl_queue.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_queue.h	2011-05-02 23:36:15.000000000 -0700
-@@ -249,7 +249,7 @@
- 
- #ifdef __GXX_EXPERIMENTAL_CXX0X__
-       void
--      swap(queue&& __q)
-+      swap(queue& __q)
-       { c.swap(__q.c); }
- #endif
-     };
-@@ -550,7 +550,7 @@
- 
- #ifdef __GXX_EXPERIMENTAL_CXX0X__
-       void
--      swap(priority_queue&& __pq)
-+      swap(priority_queue& __pq)
-       {
- 	using std::swap;
- 	c.swap(__pq.c);
-
diff  -ur a/bits/stl_set.h b/bits/stl_set.h
---- a/bits/stl_set.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_set.h	2011-03-29 10:33:39.000000000 -0700
-@@ -383,11 +383,7 @@
-        *  std::swap(s1,s2) will feed to this function.
-        */
-       void
--#ifdef __GXX_EXPERIMENTAL_CXX0X__
--      swap(set&& __x)
--#else
-       swap(set& __x)	
--#endif
-       { _M_t.swap(__x._M_t); }
- 
-       // insert/erase
-
diff  -ur a/bits/stl_stack.h b/bits/stl_stack.h
---- a/bits/stl_stack.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_stack.h	2011-05-02 23:36:36.000000000 -0700
-@@ -213,7 +213,7 @@
- 
- #ifdef __GXX_EXPERIMENTAL_CXX0X__
-       void
--      swap(stack&& __s)
-+      swap(stack& __s)
-       { c.swap(__s.c); }
- #endif
-     };
-
diff  -ur a/bits/stl_tree.h b/bits/stl_tree.h
---- a/bits/stl_tree.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_tree.h	2011-03-29 10:33:39.000000000 -0700
-@@ -675,11 +675,7 @@
-       { return _M_get_Node_allocator().max_size(); }
- 
-       void
--#ifdef __GXX_EXPERIMENTAL_CXX0X__
--      swap(_Rb_tree&& __t);
--#else
-       swap(_Rb_tree& __t);      
--#endif
- 
-       // Insert/erase.
-       pair<iterator, bool>
-@@ -1104,11 +1100,7 @@
-            typename _Compare, typename _Alloc>
-     void
-     _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
--#ifdef __GXX_EXPERIMENTAL_CXX0X__
--    swap(_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>&& __t)
--#else
-     swap(_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __t)
--#endif
-     {
-       if (_M_root() == 0)
- 	{
-
diff  -ur a/bits/stl_vector.h b/bits/stl_vector.h
---- a/bits/stl_vector.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/stl_vector.h	2011-03-29 10:33:39.000000000 -0700
-@@ -923,11 +923,7 @@
-        *  std::swap(v1,v2) will feed to this function.
-        */
-       void
--#ifdef __GXX_EXPERIMENTAL_CXX0X__
--      swap(vector&& __x)
--#else
-       swap(vector& __x)
--#endif
-       {
- 	std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
- 	std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
-
diff  -ur a/bits/unique_ptr.h b/bits/unique_ptr.h
---- a/bits/unique_ptr.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/bits/unique_ptr.h	2011-03-31 16:40:45.000000000 -0700
-@@ -204,7 +204,7 @@
-       }
- 
-       void
--      swap(unique_ptr&& __u)
-+      swap(unique_ptr& __u)
-       {
- 	using std::swap;
- 	swap(_M_t, __u._M_t);
-@@ -350,7 +350,7 @@
-         void reset(_Up) = delete;
- 
-       void
--      swap(unique_ptr&& __u)
-+      swap(unique_ptr& __u)
-       {
- 	using std::swap;
- 	swap(_M_t, __u._M_t);
-@@ -389,18 +389,6 @@
- 	 unique_ptr<_Tp, _Tp_Deleter>& __y)
-     { __x.swap(__y); }
- 
--  template<typename _Tp, typename _Tp_Deleter> 
--    inline void
--    swap(unique_ptr<_Tp, _Tp_Deleter>&& __x,
--	 unique_ptr<_Tp, _Tp_Deleter>& __y)
--    { __x.swap(__y); }
--
--  template<typename _Tp, typename _Tp_Deleter> 
--    inline void
--    swap(unique_ptr<_Tp, _Tp_Deleter>& __x,
--	 unique_ptr<_Tp, _Tp_Deleter>&& __y)
--    { __x.swap(__y); }
--  
-   template<typename _Tp, typename _Tp_Deleter,
- 	   typename _Up, typename _Up_Deleter>
-     inline bool
-
diff  -ur a/exception_ptr.h b/exception_ptr.h
---- a/exception_ptr.h	2011-03-15 14:49:08.000000000 -0700
-+++ b/exception_ptr.h	2011-03-29 10:33:39.000000000 -0700
-@@ -140,7 +140,7 @@
-       friend bool 
-       operator==(const exception_ptr&, const exception_ptr&) throw();
- 
--      const type_info*
-+      const class type_info*
-       __cxa_exception_type() const throw();
-     };
- 
-
diff  -ur a/ext/algorithm b/ext/algorithm
---- a/ext/algorithm	2011-03-15 14:49:05.000000000 -0700
-+++ b/ext/algorithm	2011-03-29 10:33:39.000000000 -0700
-@@ -423,6 +423,9 @@
- 			     __out_last - __out_first);
-     }
- 
-+#ifdef __GXX_EXPERIMENTAL_CXX0X__
-+  using std::is_heap;
-+#else
-   /**
-    *  This is an SGI extension.
-    *  @ingroup SGIextensions
-@@ -462,6 +465,7 @@
- 
-       return std::__is_heap(__first, __comp, __last - __first);
-     }
-+#endif
- 
-   // is_sorted, a predicated testing whether a range is sorted in
-   // nondescending order.  This is an extension, not part of the C++
-
diff  -ur a/ext/vstring.h b/ext/vstring.h
---- a/ext/vstring.h	2011-03-15 14:49:05.000000000 -0700
-+++ b/ext/vstring.h	2011-03-29 10:33:39.000000000 -0700
-@@ -152,7 +152,7 @@
-        *  string.
-        */
-       __versa_string(__versa_string&& __str)
--      : __vstring_base(std::forward<__vstring_base>(__str)) { }
-+      : __vstring_base(std::move(__str)) { }
- 
-       /**
-        *  @brief  Construct string from an initializer list.
-@@ -1439,11 +1439,7 @@
-        *  constant time.
-       */
-       void
--#ifdef __GXX_EXPERIMENTAL_CXX0X__
--      swap(__versa_string&& __s)
--#else
-       swap(__versa_string& __s)
--#endif
-       { this->_M_swap(__s); }
- 
-       // String operations:
-
diff  -ur a/tr1_impl/hashtable b/tr1_impl/hashtable
---- a/tr1_impl/hashtable	2011-03-15 14:49:07.000000000 -0700
-+++ b/tr1_impl/hashtable	2011-05-02 23:41:55.000000000 -0700
-@@ -225,11 +225,7 @@
- 
-       ~_Hashtable();
- 
--#ifdef _GLIBCXX_INCLUDE_AS_CXX0X
--      void swap(_Hashtable&&);
--#else
-       void swap(_Hashtable&);
--#endif
- 
-       // Basic container operations
-       iterator
-@@ -732,11 +728,7 @@
-     void
-     _Hashtable<_Key, _Value, _Allocator, _ExtractKey, _Equal,
- 	       _H1, _H2, _Hash, _RehashPolicy, __chc, __cit, __uk>::
--#ifdef _GLIBCXX_INCLUDE_AS_CXX0X
--    swap(_Hashtable&& __x)
--#else
-     swap(_Hashtable& __x)
--#endif
-     {
-       // The only base class with member variables is hash_code_base.  We
-       // define _Hash_code_base::_M_swap because 
diff erent specializations
-
diff  -ur a/tuple b/tuple
---- a/tuple	2011-03-15 14:49:07.000000000 -0700
-+++ b/tuple	2011-05-02 23:33:23.000000000 -0700
-@@ -77,7 +77,7 @@
-       _Head&       _M_head()       { return *this; }
-       const _Head& _M_head() const { return *this; }
-     
--      void _M_swap_impl(_Head&&) { /* no-op */ }
-+      void _M_swap_impl(_Head&) { /* no-op */ }
-     };
- 
-   template<std::size_t _Idx, typename _Head>
-@@ -97,7 +97,7 @@
-       const _Head& _M_head() const { return _M_head_impl; }        
- 
-       void
--      _M_swap_impl(_Head&& __h)
-+      _M_swap_impl(_Head& __h)
-       { 
- 	using std::swap;
- 	swap(__h, _M_head_impl);
-@@ -125,7 +125,7 @@
-     struct _Tuple_impl<_Idx>
-     { 
-     protected:
--      void _M_swap_impl(_Tuple_impl&&) { /* no-op */ }
-+      void _M_swap_impl(_Tuple_impl&) { /* no-op */ }
-     };
- 
-   /**
-@@ -214,7 +214,7 @@
- 
-     protected:
-       void
--      _M_swap_impl(_Tuple_impl&& __in)
-+      _M_swap_impl(_Tuple_impl& __in)
-       {
- 	_Base::_M_swap_impl(__in._M_head());
- 	_Inherited::_M_swap_impl(__in._M_tail());
-@@ -292,7 +292,7 @@
- 	}
- 
-       void
--      swap(tuple&& __in)
-+      swap(tuple& __in)
-       { _Inherited::_M_swap_impl(__in); }
-     };
- 
-@@ -301,7 +301,7 @@
-     class tuple<>
-     {
-     public:
--      void swap(tuple&&) { /* no-op */ }
-+      void swap(tuple&) { /* no-op */ }
-     };
- 
-   /// tuple (2-element), with construction and assignment from a pair.
-@@ -394,7 +394,7 @@
- 	}
- 
-       void
--      swap(tuple&& __in)
-+      swap(tuple& __in)
-       { 
- 	using std::swap;
- 	swap(this->_M_head(), __in._M_head());

diff  --git a/clang/www/libstdc++4.6-clang11.patch b/clang/www/libstdc++4.6-clang11.patch
deleted file mode 100644
index cc2cb1404da5a..0000000000000
--- a/clang/www/libstdc++4.6-clang11.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- type_traits.orig	2012-10-04 15:20:43.452992946 -0700
-+++ type_traits	2012-10-04 15:21:32.423657167 -0700
-@@ -1110,7 +1110,7 @@
- 
-   template<typename _Tp, typename _Up>
-     struct common_type<_Tp, _Up>
--    { typedef decltype(true ? declval<_Tp>() : declval<_Up>()) type; };
-+    { typedef typename decay<decltype(true ? declval<_Tp>() : declval<_Up>())>::type type; };
- 
-   template<typename _Tp, typename _Up, typename... _Vp>
-     struct common_type<_Tp, _Up, _Vp...>

diff  --git a/clang/www/libstdc++4.7-clang11.patch b/clang/www/libstdc++4.7-clang11.patch
deleted file mode 100644
index 3f0300725df3c..0000000000000
--- a/clang/www/libstdc++4.7-clang11.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: include/std/type_traits
-===================================================================
---- include/std/type_traits	(revision 185724)
-+++ include/std/type_traits	(working copy)
-@@ -1746,7 +1746,7 @@
- 
-   template<typename _Tp, typename _Up>
-     struct common_type<_Tp, _Up>
--    { typedef decltype(true ? declval<_Tp>() : declval<_Up>()) type; };
-+    { typedef typename decay<decltype(true ? declval<_Tp>() : declval<_Up>())>::type type; };
- 
-   template<typename _Tp, typename _Up, typename... _Vp>
-     struct common_type<_Tp, _Up, _Vp...>


        


More information about the cfe-commits mailing list