Subject: CVS commit: pkgsrc/lang
From: Adam Ciarcinski
Date: 2019-10-19 15:54:30
Message id:

Log Message:
clang: updated to 9.0.0

Major New Features
* Experimental support for C++ for OpenCL has been added.

Non-comprehensive list of changes in this release
* The __VERSION__ macro has been updated. Previously this macro contained the \ 
string ‘4.2.1 Compatible’ to achieve compatibility with GCC 4.2.1, but that \ 
should no longer be necessary. However, to retrieve Clang’s version, please \ 
favor the one of the macro defined in clang namespaced version macros.

New Compiler Flags
* -ftime-trace and ftime-trace-granularity=N Emits flame chart style compilation \ 
time report in chrome://tracing and compatible format. A trace \ 
.json file is written next to the compiled object file, containing hierarchical \ 
time information about frontend activities (file parsing, template \ 
instantiation) and backend activities (modules and functions being optimized, \ 
optimization passes).

Modified Compiler Flags
* clang -dumpversion now returns the version of Clang itself.

Windows Support
* clang-cl now treats non-existent files as possible typos for flags, clang-cl \ 
/diagnostic:caret /c for example now produces clang: error: no such file \ 
or directory: '/diagnostic:caret'; did you mean '/diagnostics:caret'?
* clang now parses the __declspec(allocator) specifier and generates debug \ 
information, so that memory usage can be tracked in Visual Studio.
* The -print-search-dirs option now separates elements with semicolons, as is \ 
the norm for path lists on Windows
* Improved handling of dllexport in conjunction with explicit template \ 
instantiations for MinGW, to allow building a shared libc++ for MinGW without \ 
--export-all-symbols to override the dllexport attributes