Subject: CVS commit: pkgsrc/lang
From: Adam Ciarcinski
Date: 2019-06-02 10:39:28
Message id:

Log Message:
clang: updated to 8.0.0

Clang 8.0.0:

Major New Features

* Clang supports use of a profile remapping file, which permits profile data \ 
captured for one version of a program to be applied when building another \ 
version where symbols have changed (for example, due to renaming a class or \ 
namespace). See the UsersManual for details.

* Clang has new options to initialize automatic variables with a pattern. The \ 
default is still that automatic variables are uninitialized. This isn’t meant \ 
to change the semantics of C and C++. Rather, it’s meant to be a last resort \ 
when programmers inadvertently have some undefined behavior in their code. These \ 
options aim to make undefined behavior hurt less, which security-minded people \ 
will be very happy about.

* Improvements to Clang’s diagnostics

Non-comprehensive list of changes in this release
* The experimental feature Pretokenized Headers (PTH) was removed in its \ 
entirely from Clang. The feature did not properly work with about 1/3 of the \ 
possible tokens available and was unmaintained.
* The internals of libc++ include directory detection on MacOS have changed. \ 
Instead of running a search based on the -resource-dir flag, the search is now \ 
based on the path of the compiler in the filesystem. The default behaviour \ 
should not change. However, if you override -resource-dir manually and rely on \ 
the old behaviour you will need to add appropriate compiler flags for finding \ 
the corresponding libc++ include directory.
* The integrated assembler is used now by default for all MIPS targets.
* Improved support for MIPS N32 ABI and MIPS R6 target triples.
* Clang now includes builtin functions for bitwise rotation of common value \ 
sizes, such as: __builtin_rotateleft32
* Improved optimization for the corresponding MSVC compatibility builtins such \ 
as _rotl().