lmi
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lmi] [PATCH] C++ m11n: range-based for loops


From: Greg Chicares
Subject: Re: [lmi] [PATCH] C++ m11n: range-based for loops
Date: Sat, 14 Jan 2017 00:11:49 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Icedove/45.5.1

On 2017-01-11 22:39, Vadim Zeitlin wrote:
> 
>               https://github.com/vadz/lmi/pull/52

That pull-request contains two successive patches that I'll refer to as
"52a" and "52b" for simplicity. I'll use "52a+52b" to refer to the
result of applying both in the obvious order. Now I've tested both 52a
and 52a+52b, and they pass all my customary tests with the following
exceptions:

  52a: need to backport this change to 'group_values.cpp' from 52b:
-            MaxYr = std::max(MaxYr, (*i)->GetLength());
+            MaxYr = std::max(MaxYr, cell_value->GetLength());

  52a+52b: disregard directory_iterator changes (asterisked below), so:
    no changes at all to these files:
      ce_product_name.cpp ce_skin_name.cpp dbdict.cpp 
wx_test_benchmark_census.cpp
    only 52a (clang-tidy) changes to this file:
      dbdict.cpp

Let me emphasize that the automated tests are not comprehensive
proof that all changes are correct. For example, 'ce_skin_name.cpp'
mentioned above eluded all the tests I ran. (And, as Kim pointed out
today, the automated GUI tests really should be augmented, but we can
discuss that another day.)

I've prepared the document pasted inline below to guide me through the
remaining work. First, I'll dispatch the "common" files that were
changed by both 52a and 52b, because N-way merges require O(N^c)
thought for some large constant c. (Perhaps I'll commit one or two of
the smaller ones first, so we can see the practical effects of "Rule 2"
(discussed elsewhere), starting with 'authenticity_test.cpp' so that
the variable name 'aut0' can be expunged.) Then I'll turn first to the
changes unique to 52a, and, last, to those unique to 52b (which call
for greater caution because they weren't generated by clang-tidy).

 ------clang-tidy------               ------VZ-manual------
                      -----common------

 authenticity_test.cpp        |  7 || authenticity_test.cpp        |  6
 census_view.cpp              | 56 || census_view.cpp              | 18
 crc32.cpp                    |  4 || crc32.cpp                    |  4
 dbdict.cpp                   | 15 ||*dbdict.cpp                   | 10
 group_values.cpp             | 25 || group_values.cpp             | 73
 input_sequence.cpp           | 16 || input_sequence.cpp           |  2
 input_sequence_entry.cpp     | 20 || input_sequence_entry.cpp     |  6
 ledger.cpp                   | 18 || ledger.cpp                   | 20
 wx_table_generator.cpp       | 18 || wx_table_generator.cpp       |  8

                      -----unique------

                                      actuarial_table.cpp          |  4
 any_member.hpp               | 19
                                      authenticity.cpp             |  4
                                      bcc_ld.cpp                   | 11
                                     *ce_product_name.cpp          |  8
                                     *ce_skin_name.cpp             |  8
                                      database_view.cpp            |  7
 dbnames.cpp                  |  5
 gpt_input.cpp                |  9
                                      gpt_state.cpp                |  5
 group_quote_pdf_gen_wx.cpp   | 27
 icon_monger.cpp              |  3
 ihs_acctval.cpp              |  9
                                      illustrator.cpp              | 18
 input_harmonization.cpp      | 27
 input_realization.cpp        | 15
                                      input_seq_helpers.hpp        | 10
 ledger_base.cpp              | 84
 ledger_text_formats.cpp      | 39
 ledger_xml_io.cpp            | 18
 main_cli.cpp                 |  6
 main_wx_test.cpp             | 21
 mec_input.cpp                | 10
 miscellany.cpp               |  4
 multiple_cell_document.cpp   | 37
 mvc_controller.cpp           | 56
 mvc_model.cpp                |  7
 policy_document.cpp          | 18
 policy_view.cpp              | 32
 preferences_model.cpp        | 27
 print_matrix.hpp             |  4
 product_data.cpp             |  5
 regex_test.cpp               | 10
 rounding_document.cpp        | 10
 rounding_view.cpp            | 23
 single_cell_document.cpp     |  9
 skeleton.cpp                 | 24
 test_coding_rules.cpp        |  8
 tier_document.cpp            |  6
 tier_view.cpp                |  4
 view_ex.tpp                  |  4
 wx_test_about_version.cpp    | 25
                                     *wx_test_benchmark_census.cpp |  6
 wx_test_input_sequences.cpp  |  4
 wx_test_input_validation.cpp |  4
 wx_test_paste_census.cpp     |  9
 wx_utility.cpp               |  4
 xml_lmi.cpp                  |  9
 xml_serializable.tpp         | 10
 xml_serialize.hpp            | 11

  49 files changed                 || 19 files changed
 310 insertions                    || 110 insertions
 525 deletions                     || 118 deletions

-------------------------------------------------------------------------------

* Removed directory_iterator changes, which means
  no changes at all to these files:
    ce_product_name.cpp ce_skin_name.cpp dbdict.cpp wx_test_benchmark_census.cpp
  only clang-tidy changes to this file:
    dbdict.cpp




reply via email to

[Prev in Thread] Current Thread [Next in Thread]