57 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
This is meant to be a general place to list things that should be done "someday"
 | 
						|
 | 
						|
3.8 Release Goals
 | 
						|
=================
 | 
						|
* LFTS v1 (EricWF, MClow)
 | 
						|
* Filesystem TS (EricWF)
 | 
						|
* ASIO TS (MClow)
 | 
						|
* <regex> Improvements (MClow)
 | 
						|
* Setup ABI Versioning policy (EricWF)
 | 
						|
* Fix PR19302 - Fix UB in list and __tree.
 | 
						|
 | 
						|
 | 
						|
ABI Related Tasks
 | 
						|
=================
 | 
						|
* Explicitly manage and verify symbols exported from the dylib.
 | 
						|
* Explore using namespaces for managing symbol visibility.
 | 
						|
* Introduce and document ABI versioning/evolution policy.
 | 
						|
 | 
						|
CXX Runtime Library Tasks
 | 
						|
=========================
 | 
						|
* Cleanup #ifdef hell in sources files that supports the different ABI libraries.
 | 
						|
* Fix that CMake always link to /usr/lib/libc++abi.dylib on OS X.
 | 
						|
* Fix selection of ABI symbol list on OS X.
 | 
						|
* Have CMake generate linker scripts for libc++.so that it properly links the
 | 
						|
  runtime library.
 | 
						|
* Look into mirroring libsupc++'s typeinfo vtable layout when libsupc++/libstdc++
 | 
						|
  is used as the runtime library.
 | 
						|
* Audit libraries that CMake links into libc++. Are they all required?
 | 
						|
* Investigate and document interoperability between libc++ and libstdc++ on
 | 
						|
  linux. Do this for every supported c++ runtime library.
 | 
						|
 | 
						|
Atomic Related Tasks
 | 
						|
====================
 | 
						|
* Enable mixing of clang and GCC atomics internally. Currently some
 | 
						|
  parts of libc++ use atomics only when clang provides them.
 | 
						|
  (see memory@5380 for an example)
 | 
						|
* Audit use of libatomic builtins in <atomic> with GCC.
 | 
						|
* future should use <atomic> for synchronization.
 | 
						|
 | 
						|
Test Suite Tasks
 | 
						|
================
 | 
						|
* Move all libc++ specific tests from test/std into test/libcxx.
 | 
						|
* Improve how LIT handles compiler warnings.
 | 
						|
* Improve the quality and portability of the locale test data.
 | 
						|
* Convert failure tests to use Clang Verify.
 | 
						|
 | 
						|
Misc Tasks
 | 
						|
==========
 | 
						|
* Find all sequences of >2 underscores and eradicate them.
 | 
						|
* run clang-tidy on libc++
 | 
						|
* Document the "conditionally-supported" bits of libc++
 | 
						|
* Look at basic_string's move assignment operator, re LWG 2063 and POCMA
 | 
						|
* libc++ is missing try_emplace
 | 
						|
* Put a static_assert in std::allocator to deny const/volatile types (LWG 2447)
 | 
						|
* Document support (or lack of) for C++11 libraries in C++03.
 | 
						|
* Document supported compilers.
 |