Pull new version of libc++ into vendor branch.
Import new libc++.  This contains some fixes for code compiled in c++98 / c++03
mode.
Import new libc++ to vendor branch.
Vendor import of libc++ trunk r180598.
Pull new libc++ into vendor branch.
Vendor import of OpenSSH 6.4p1.

Approved by:	des
Vendor import of llvm release_34 branch r197841 (effectively, 3.4 RC3):
https://llvm.org/svn/llvm-project/llvm/branches/release_34@197841
Vendor import of clang release_34 branch r197841 (effectively, 3.4 RC3):
https://llvm.org/svn/llvm-project/cfe/branches/release_34@197841
Initial import of elftoolchain r2974.

Obtained from:	elftoolchain.org
Copy libelf, libdwarf and common files from vendor/ to contrib/.
Removed source code for the old libelf and build the new libelf from
contrib/ instead.
Set CFLAGS in just one line.
Use FreeBSD's ELF headers instead of the elfdefinitions.h header which
comes with elftoolchain. This version of libelf doesn't need to be
portable; using FreeBSD's own ELF headers will avoid conflicts and
make integration easier.
Define SHT_GNU_LIBLIST and R_MIPS_64, which is needed for libelf and
libdwarf.
Remove the old libdwarf and bring in the new libdwarf in contrib/.
Convert ctfconvert to use the new libdwarf API.
If function die_name() finds a DIE without a name, set its name to
"__anon__". This hack is used to workaround a issue that compilers
like GCC could generate DW_TAG_base_type DIE without a name.

Note that we didn't need this before because the old libdwarf
internally set all the unnamed DIE's name to "__anon__".
We should not set the unnamed DIE's name to "__anon__" since that will
bring back a known issue with DTrace regarding type name
comparison. Instead, we can set the name to an empty string.

Pointed out by:	     avg
Apply r241720 by ed:

Fix warnings found by -Wmising-variable-declarations.
Fix a warning in libdwarf found by -Wmissing-variable-declarations.