[libcxx-commits] [libcxx] 0451ed9 - [libc++] NFC: Remove trailing whitespace from the feature test macro table

Louis Dionne via libcxx-commits libcxx-commits at lists.llvm.org
Tue Sep 22 05:45:58 PDT 2020


Author: Louis Dionne
Date: 2020-09-22T08:45:48-04:00
New Revision: 0451ed961993d4f52f4083192de0e57a1b246ac6

URL: https://github.com/llvm/llvm-project/commit/0451ed961993d4f52f4083192de0e57a1b246ac6
DIFF: https://github.com/llvm/llvm-project/commit/0451ed961993d4f52f4083192de0e57a1b246ac6.diff

LOG: [libc++] NFC: Remove trailing whitespace from the feature test macro table

Added: 
    

Modified: 
    libcxx/docs/FeatureTestMacroTable.rst
    libcxx/utils/generate_feature_test_macro_components.py

Removed: 
    


################################################################################
diff  --git a/libcxx/docs/FeatureTestMacroTable.rst b/libcxx/docs/FeatureTestMacroTable.rst
index 61773381c15f..66162d73727f 100644
--- a/libcxx/docs/FeatureTestMacroTable.rst
+++ b/libcxx/docs/FeatureTestMacroTable.rst
@@ -22,205 +22,204 @@ Status
      :widths: auto
 
     ================================================= =================
-    Macro Name                                        Value            
+    Macro Name                                        Value
     ================================================= =================
-    **C++ 14**                                                         
+    **C++ 14**
     -------------------------------------------------------------------
-    ``__cpp_lib_chrono_udls``                         ``201304L``      
+    ``__cpp_lib_chrono_udls``                         ``201304L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_complex_udls``                        ``201309L``      
+    ``__cpp_lib_complex_udls``                        ``201309L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_exchange_function``                   ``201304L``      
+    ``__cpp_lib_exchange_function``                   ``201304L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_generic_associative_lookup``          ``201304L``      
+    ``__cpp_lib_generic_associative_lookup``          ``201304L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_integer_sequence``                    ``201304L``      
+    ``__cpp_lib_integer_sequence``                    ``201304L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_integral_constant_callable``          ``201304L``      
+    ``__cpp_lib_integral_constant_callable``          ``201304L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_is_final``                            ``201402L``      
+    ``__cpp_lib_is_final``                            ``201402L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_is_null_pointer``                     ``201309L``      
+    ``__cpp_lib_is_null_pointer``                     ``201309L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_make_reverse_iterator``               ``201402L``      
+    ``__cpp_lib_make_reverse_iterator``               ``201402L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_make_unique``                         ``201304L``      
+    ``__cpp_lib_make_unique``                         ``201304L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_null_iterators``                      ``201304L``      
+    ``__cpp_lib_null_iterators``                      ``201304L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_quoted_string_io``                    ``201304L``      
+    ``__cpp_lib_quoted_string_io``                    ``201304L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_result_of_sfinae``                    ``201210L``      
+    ``__cpp_lib_result_of_sfinae``                    ``201210L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_robust_nonmodifying_seq_ops``         ``201304L``      
+    ``__cpp_lib_robust_nonmodifying_seq_ops``         ``201304L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_shared_timed_mutex``                  ``201402L``      
+    ``__cpp_lib_shared_timed_mutex``                  ``201402L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_string_udls``                         ``201304L``      
+    ``__cpp_lib_string_udls``                         ``201304L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_transformation_trait_aliases``        ``201304L``      
+    ``__cpp_lib_transformation_trait_aliases``        ``201304L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_transparent_operators``               ``201210L``      
+    ``__cpp_lib_transparent_operators``               ``201210L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_tuple_element_t``                     ``201402L``      
+    ``__cpp_lib_tuple_element_t``                     ``201402L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_tuples_by_type``                      ``201304L``      
+    ``__cpp_lib_tuples_by_type``                      ``201304L``
     ------------------------------------------------- -----------------
-    **C++ 17**                                                         
+    **C++ 17**
     -------------------------------------------------------------------
-    ``__cpp_lib_addressof_constexpr``                 ``201603L``      
+    ``__cpp_lib_addressof_constexpr``                 ``201603L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_allocator_traits_is_always_equal``    ``201411L``      
+    ``__cpp_lib_allocator_traits_is_always_equal``    ``201411L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_any``                                 ``201606L``      
+    ``__cpp_lib_any``                                 ``201606L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_apply``                               ``201603L``      
+    ``__cpp_lib_apply``                               ``201603L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_array_constexpr``                     ``201603L``      
+    ``__cpp_lib_array_constexpr``                     ``201603L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_as_const``                            ``201510L``      
+    ``__cpp_lib_as_const``                            ``201510L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_atomic_is_always_lock_free``          ``201603L``      
+    ``__cpp_lib_atomic_is_always_lock_free``          ``201603L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_bool_constant``                       ``201505L``      
+    ``__cpp_lib_bool_constant``                       ``201505L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_boyer_moore_searcher``                *unimplemented*  
+    ``__cpp_lib_boyer_moore_searcher``                *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_byte``                                ``201603L``      
+    ``__cpp_lib_byte``                                ``201603L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_chrono``                              ``201611L``      
+    ``__cpp_lib_chrono``                              ``201611L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_clamp``                               ``201603L``      
+    ``__cpp_lib_clamp``                               ``201603L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_enable_shared_from_this``             ``201603L``      
+    ``__cpp_lib_enable_shared_from_this``             ``201603L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_execution``                           *unimplemented*  
+    ``__cpp_lib_execution``                           *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_filesystem``                          ``201703L``      
+    ``__cpp_lib_filesystem``                          ``201703L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_gcd_lcm``                             ``201606L``      
+    ``__cpp_lib_gcd_lcm``                             ``201606L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_hardware_interference_size``          *unimplemented*  
+    ``__cpp_lib_hardware_interference_size``          *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_has_unique_object_representations``   ``201606L``      
+    ``__cpp_lib_has_unique_object_representations``   ``201606L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_hypot``                               ``201603L``      
+    ``__cpp_lib_hypot``                               ``201603L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_incomplete_container_elements``       ``201505L``      
+    ``__cpp_lib_incomplete_container_elements``       ``201505L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_invoke``                              ``201411L``      
+    ``__cpp_lib_invoke``                              ``201411L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_is_aggregate``                        ``201703L``      
+    ``__cpp_lib_is_aggregate``                        ``201703L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_is_invocable``                        ``201703L``      
+    ``__cpp_lib_is_invocable``                        ``201703L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_is_swappable``                        ``201603L``      
+    ``__cpp_lib_is_swappable``                        ``201603L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_launder``                             ``201606L``      
+    ``__cpp_lib_launder``                             ``201606L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_logical_traits``                      ``201510L``      
+    ``__cpp_lib_logical_traits``                      ``201510L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_make_from_tuple``                     ``201606L``      
+    ``__cpp_lib_make_from_tuple``                     ``201606L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_map_try_emplace``                     ``201411L``      
+    ``__cpp_lib_map_try_emplace``                     ``201411L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_math_special_functions``              *unimplemented*  
+    ``__cpp_lib_math_special_functions``              *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_memory_resource``                     *unimplemented*  
+    ``__cpp_lib_memory_resource``                     *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_node_extract``                        ``201606L``      
+    ``__cpp_lib_node_extract``                        ``201606L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_nonmember_container_access``          ``201411L``      
+    ``__cpp_lib_nonmember_container_access``          ``201411L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_not_fn``                              ``201603L``      
+    ``__cpp_lib_not_fn``                              ``201603L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_optional``                            ``201606L``      
+    ``__cpp_lib_optional``                            ``201606L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_parallel_algorithm``                  *unimplemented*  
+    ``__cpp_lib_parallel_algorithm``                  *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_raw_memory_algorithms``               ``201606L``      
+    ``__cpp_lib_raw_memory_algorithms``               ``201606L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_sample``                              ``201603L``      
+    ``__cpp_lib_sample``                              ``201603L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_scoped_lock``                         ``201703L``      
+    ``__cpp_lib_scoped_lock``                         ``201703L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_shared_mutex``                        ``201505L``      
+    ``__cpp_lib_shared_mutex``                        ``201505L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_shared_ptr_arrays``                   *unimplemented*  
+    ``__cpp_lib_shared_ptr_arrays``                   *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_shared_ptr_weak_type``                ``201606L``      
+    ``__cpp_lib_shared_ptr_weak_type``                ``201606L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_string_view``                         ``201606L``      
+    ``__cpp_lib_string_view``                         ``201606L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_to_chars``                            *unimplemented*  
+    ``__cpp_lib_to_chars``                            *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_transparent_operators``               ``201510L``      
+    ``__cpp_lib_transparent_operators``               ``201510L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_type_trait_variable_templates``       ``201510L``      
+    ``__cpp_lib_type_trait_variable_templates``       ``201510L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_uncaught_exceptions``                 ``201411L``      
+    ``__cpp_lib_uncaught_exceptions``                 ``201411L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_unordered_map_try_emplace``           ``201411L``      
+    ``__cpp_lib_unordered_map_try_emplace``           ``201411L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_variant``                             ``201606L``      
+    ``__cpp_lib_variant``                             ``201606L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_void_t``                              ``201411L``      
+    ``__cpp_lib_void_t``                              ``201411L``
     ------------------------------------------------- -----------------
-    **C++ 2a**                                                         
+    **C++ 2a**
     -------------------------------------------------------------------
-    ``__cpp_lib_array_constexpr``                     ``201811L``      
+    ``__cpp_lib_array_constexpr``                     ``201811L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_atomic_flag_test``                    ``201907L``      
+    ``__cpp_lib_atomic_flag_test``                    ``201907L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_atomic_float``                        *unimplemented*  
+    ``__cpp_lib_atomic_float``                        *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_atomic_lock_free_type_aliases``       ``201907L``      
+    ``__cpp_lib_atomic_lock_free_type_aliases``       ``201907L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_atomic_ref``                          *unimplemented*  
+    ``__cpp_lib_atomic_ref``                          *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_atomic_shared_ptr``                   *unimplemented*  
+    ``__cpp_lib_atomic_shared_ptr``                   *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_atomic_value_initialization``         *unimplemented*  
+    ``__cpp_lib_atomic_value_initialization``         *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_atomic_wait``                         ``201907L``      
+    ``__cpp_lib_atomic_wait``                         ``201907L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_bind_front``                          *unimplemented*  
+    ``__cpp_lib_bind_front``                          *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_bit_cast``                            *unimplemented*  
+    ``__cpp_lib_bit_cast``                            *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_char8_t``                             ``201811L``      
+    ``__cpp_lib_char8_t``                             ``201811L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_concepts``                            *unimplemented*  
+    ``__cpp_lib_concepts``                            *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_constexpr_misc``                      *unimplemented*  
+    ``__cpp_lib_constexpr_misc``                      *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_constexpr_swap_algorithms``           *unimplemented*  
+    ``__cpp_lib_constexpr_swap_algorithms``           *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_constexpr_utility``                   ``201811L``      
+    ``__cpp_lib_constexpr_utility``                   ``201811L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_destroying_delete``                   ``201806L``      
+    ``__cpp_lib_destroying_delete``                   ``201806L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_endian``                              ``201907L``      
+    ``__cpp_lib_endian``                              ``201907L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_erase_if``                            ``202002L``      
+    ``__cpp_lib_erase_if``                            ``202002L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_generic_unordered_lookup``            *unimplemented*  
+    ``__cpp_lib_generic_unordered_lookup``            *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_interpolate``                         ``201902L``      
+    ``__cpp_lib_interpolate``                         ``201902L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_is_constant_evaluated``               ``201811L``      
+    ``__cpp_lib_is_constant_evaluated``               ``201811L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_list_remove_return_type``             ``201806L``      
+    ``__cpp_lib_list_remove_return_type``             ``201806L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_math_constants``                      ``201907L``      
+    ``__cpp_lib_math_constants``                      ``201907L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_ranges``                              *unimplemented*  
+    ``__cpp_lib_ranges``                              *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_span``                                ``202002L``      
+    ``__cpp_lib_span``                                ``202002L``
     ------------------------------------------------- -----------------
-    ``__cpp_lib_three_way_comparison``                *unimplemented*  
+    ``__cpp_lib_three_way_comparison``                *unimplemented*
     ------------------------------------------------- -----------------
-    ``__cpp_lib_to_array``                            ``201907L``      
+    ``__cpp_lib_to_array``                            ``201907L``
     ================================================= =================
 
-

diff  --git a/libcxx/utils/generate_feature_test_macro_components.py b/libcxx/utils/generate_feature_test_macro_components.py
index 211702e9982c..2eecc0d5591c 100755
--- a/libcxx/utils/generate_feature_test_macro_components.py
+++ b/libcxx/utils/generate_feature_test_macro_components.py
@@ -994,25 +994,27 @@ def create_table(grid, indent):
   indent_str = ' '*indent
   col_widths = make_widths(grid)
   num_cols = len(grid[0])
-  result = indent_str + add_divider(col_widths, 2)
+  result = [indent_str + add_divider(col_widths, 2)]
   header_flag = 2
   for row_i in range(0, len(grid)):
     row = grid[row_i]
-    result = result + indent_str + ' '.join([pad_cell(row[i], col_widths[i]) for i in range(0, len(row))]) + '\n'
+    line = indent_str + ' '.join([pad_cell(row[i], col_widths[i]) for i in range(0, len(row))])
+    result.append(line.rstrip())
     is_cxx_header = row[0].startswith('**')
     if row_i == len(grid) - 1:
       header_flag = 2
-    result = result + indent_str + add_divider(col_widths, 1 if is_cxx_header else header_flag)
+    separator = indent_str + add_divider(col_widths, 1 if is_cxx_header else header_flag)
+    result.append(separator.rstrip())
     header_flag = 0
-  return result
+  return '\n'.join(result)
 
 def add_divider(widths, header_flag):
   if header_flag == 2:
-    return ' '.join(['='*w for w in widths]) + '\n'
+    return ' '.join(['='*w for w in widths])
   if header_flag == 1:
-    return '-'.join(['-'*w for w in widths]) + '\n'
+    return '-'.join(['-'*w for w in widths])
   else:
-    return ' '.join(['-'*w for w in widths]) + '\n'
+    return ' '.join(['-'*w for w in widths])
 
 def pad_cell(s, length, left_align=True):
   padding = ((length - len(s)) * ' ')


        


More information about the libcxx-commits mailing list