diff --git a/src/abg-default-reporter.cc b/src/abg-default-reporter.cc
index b67fe259..1c39b3b2 100644
--- a/src/abg-default-reporter.cc
+++ b/src/abg-default-reporter.cc
@@ -170,8 +170,6 @@ default_reporter::report(const enum_diff& d, ostream& out,
 	}
     }
 
-  out << "\n";
-
   if (d.context()->show_leaf_changes_only())
     maybe_report_interfaces_impacted_by_diff(&d, out, indent);
 
@@ -979,7 +977,7 @@ default_reporter::report(const class_or_union_diff& d,
 	  diff->report(out, indent + "    ");
 	  emitted = true;
 	}
-      if (numchanges)
+      if (emitted)
 	out << "\n";
     }
 
diff --git a/tests/data/test-abidiff/test-enum0-report.txt b/tests/data/test-abidiff/test-enum0-report.txt
index 1cd7eaaf..e6aad7aa 100644
--- a/tests/data/test-abidiff/test-enum0-report.txt
+++ b/tests/data/test-abidiff/test-enum0-report.txt
@@ -5,7 +5,6 @@
       'E::e2' value '1'
     1 enumerator insertion:
       'E::e1' value '1'
-
 1 changed declaration:
   'function void foo(E)' was changed to 'function void foo(E)':
     parameter 1 of type 'enum E' has sub-type changes:
diff --git a/tests/data/test-abidiff/test-enum1-report.txt b/tests/data/test-abidiff/test-enum1-report.txt
index 7e8acf80..ab13895c 100644
--- a/tests/data/test-abidiff/test-enum1-report.txt
+++ b/tests/data/test-abidiff/test-enum1-report.txt
@@ -5,7 +5,6 @@
       'E::e1' value '1'
     1 enumerator change:
       'E::e2' from value '1' to '2'
-
 1 changed declaration:
   'function void foo(E)' was changed to 'function void foo(E)':
     parameter 1 of type 'enum E' has sub-type changes:
diff --git a/tests/data/test-diff-dwarf/PR25058-liblttng-ctl-report-1.txt b/tests/data/test-diff-dwarf/PR25058-liblttng-ctl-report-1.txt
index 8a13f3b3..dfb63684 100644
--- a/tests/data/test-diff-dwarf/PR25058-liblttng-ctl-report-1.txt
+++ b/tests/data/test-diff-dwarf/PR25058-liblttng-ctl-report-1.txt
@@ -95,7 +95,6 @@ Variables changes summary: 0 Removed, 0 Changed, 3 Added variables
             2 enumerator insertions:
               'lttng_event_context_type::LTTNG_EVENT_CONTEXT_CALLSTACK_KERNEL' value '20'
               'lttng_event_context_type::LTTNG_EVENT_CONTEXT_CALLSTACK_USER' value '21'
-
           type of 'union {lttng_event_perf_counter_ctx perf_counter; struct {char* provider_name; char* ctx_name;} app_ctx; char padding[288];} lttng_event_context::u' changed:
             type name changed from '__anonymous_union__4' to '__anonymous_union__5'
             type size hasn't changed
@@ -116,7 +115,6 @@ Variables changes summary: 0 Removed, 0 Changed, 3 Added variables
         'lttng_condition_type::LTTNG_CONDITION_TYPE_SESSION_ROTATION_ONGOING' value '103'
         'lttng_condition_type::LTTNG_CONDITION_TYPE_SESSION_ROTATION_COMPLETED' value '104'
 
-
   [C] 'function int lttng_disable_event_ext(lttng_handle*, lttng_event*, const char*, const char*)' has some indirect sub-type changes:
     parameter 2 of type 'lttng_event*' has sub-type changes:
       in pointed to type 'struct lttng_event':
@@ -127,7 +125,6 @@ Variables changes summary: 0 Removed, 0 Changed, 3 Added variables
             1 enumerator insertion:
               'lttng_event_type::LTTNG_EVENT_USERSPACE_PROBE' value '6'
 
-
   [C] 'function int lttng_enable_event(lttng_handle*, lttng_event*, const char*)' has some indirect sub-type changes:
     parameter 2 of type 'lttng_event*' has sub-type changes:
       pointed to type 'struct lttng_event' changed, as reported earlier
@@ -195,7 +192,6 @@ Variables changes summary: 0 Removed, 0 Changed, 3 Added variables
       type size hasn't changed
       1 enumerator insertion:
         'lttng_notification_channel_status::LTTNG_NOTIFICATION_CHANNEL_STATUS_INTERRUPTED' value '2'
-
     parameter 2 of type 'lttng_notification**' has sub-type changes:
       in pointed to type 'lttng_notification*':
         in pointed to type 'struct lttng_notification':
@@ -249,7 +245,6 @@ Variables changes summary: 0 Removed, 0 Changed, 3 Added variables
                               type size hasn't changed
                               1 enumerator insertion:
                                 'ast_link_type::AST_LINK_BRACKET' value '3'
-
                             type of 'ast_link_type pre_op' changed:
                               details were reported earlier
                             type of 'union {char* string; uint64_t constant; double float_constant; char* identifier; filter_node* child;} u' changed:
@@ -282,7 +277,6 @@ Variables changes summary: 0 Removed, 0 Changed, 3 Added variables
                                 'op_type::AST_OP_BIT_AND' value '10'
                                 'op_type::AST_OP_BIT_OR' value '11'
                                 'op_type::AST_OP_BIT_XOR' value '12'
-
                             type of 'filter_node* lchild' changed:
                               pointed to type 'struct filter_node' changed; details are being reported
                             type of 'filter_node* rchild' changed:
@@ -301,7 +295,6 @@ Variables changes summary: 0 Removed, 0 Changed, 3 Added variables
                                 'unary_op_type::AST_UNARY_BIN_NOT' value '4'
                               1 enumerator insertion:
                                 'unary_op_type::AST_UNARY_BIT_NOT' value '4'
-
                             type of 'filter_node* child' changed:
                               pointed to type 'struct filter_node' changed; details are being reported
                 'cds_list_head filter_ast::allocated_nodes' offset changed from 576 to 640 (in bits) (by +64 bits)
diff --git a/tests/data/test-diff-dwarf/test15-enum-report.txt b/tests/data/test-diff-dwarf/test15-enum-report.txt
index ae6370b7..bcc40270 100644
--- a/tests/data/test-diff-dwarf/test15-enum-report.txt
+++ b/tests/data/test-diff-dwarf/test15-enum-report.txt
@@ -12,4 +12,3 @@ Variables changes summary: 0 Removed, 0 Changed, 0 Added variable
           '__anonymous_enum__::v4' value '4'
           '__anonymous_enum__::v5' value '5'
 
-
diff --git a/tests/data/test-diff-filter/test19-enum-report-1.txt b/tests/data/test-diff-filter/test19-enum-report-1.txt
index ae6370b7..bcc40270 100644
--- a/tests/data/test-diff-filter/test19-enum-report-1.txt
+++ b/tests/data/test-diff-filter/test19-enum-report-1.txt
@@ -12,4 +12,3 @@ Variables changes summary: 0 Removed, 0 Changed, 0 Added variable
           '__anonymous_enum__::v4' value '4'
           '__anonymous_enum__::v5' value '5'
 
-
diff --git a/tests/data/test-diff-filter/test30-pr18904-rvalueref-report0.txt b/tests/data/test-diff-filter/test30-pr18904-rvalueref-report0.txt
index b1dd3c74..6867c0ea 100644
--- a/tests/data/test-diff-filter/test30-pr18904-rvalueref-report0.txt
+++ b/tests/data/test-diff-filter/test30-pr18904-rvalueref-report0.txt
@@ -1294,7 +1294,6 @@ Variable symbols changes summary: 0 Removed, 0 Added variable symbol not referen
           '__anonymous_enum__::c_report_myorelease' from value '122' to '126'
           '__anonymous_enum__::c_coipipe_max_number' from value '123' to '133'
 
-
   [C] 'method bool OffloadDescriptor::setup_descriptors(VarDesc*, VarDesc2*, int, int, void*)' has some indirect sub-type changes:
     parameter 1 of type 'VarDesc*' has sub-type changes:
       in pointed to type 'struct VarDesc':
diff --git a/tests/data/test-diff-filter/test30-pr18904-rvalueref-report1.txt b/tests/data/test-diff-filter/test30-pr18904-rvalueref-report1.txt
index c49d6c68..951f0605 100644
--- a/tests/data/test-diff-filter/test30-pr18904-rvalueref-report1.txt
+++ b/tests/data/test-diff-filter/test30-pr18904-rvalueref-report1.txt
@@ -1294,7 +1294,6 @@ Variable symbols changes summary: 0 Removed, 0 Added variable symbol not referen
           '__anonymous_enum__::c_report_myorelease' from value '122' to '126' at liboffload_error_codes.h:38:1
           '__anonymous_enum__::c_coipipe_max_number' from value '123' to '133' at liboffload_error_codes.h:38:1
 
-
   [C] 'method bool OffloadDescriptor::setup_descriptors(VarDesc*, VarDesc2*, int, int, void*)' at offload_host.h:157:1 has some indirect sub-type changes:
     parameter 1 of type 'VarDesc*' has sub-type changes:
       in pointed to type 'struct VarDesc' at offload_common.h:254:1:
diff --git a/tests/data/test-diff-filter/test30-pr18904-rvalueref-report2.txt b/tests/data/test-diff-filter/test30-pr18904-rvalueref-report2.txt
index f0986450..fdd96bc8 100644
--- a/tests/data/test-diff-filter/test30-pr18904-rvalueref-report2.txt
+++ b/tests/data/test-diff-filter/test30-pr18904-rvalueref-report2.txt
@@ -1294,7 +1294,6 @@ Variable symbols changes summary: 0 Removed, 0 Added variable symbol not referen
           '__anonymous_enum__::c_report_myorelease' from value '122' to '126' at liboffload_error_codes.h:38:1
           '__anonymous_enum__::c_coipipe_max_number' from value '123' to '133' at liboffload_error_codes.h:38:1
 
-
   [C] 'method bool OffloadDescriptor::setup_descriptors(VarDesc*, VarDesc2*, int, int, void*)' at offload_host.h:157:1 has some indirect sub-type changes:
     parameter 1 of type 'VarDesc*' has sub-type changes:
       in pointed to type 'struct VarDesc' at offload_common.h:254:1:
diff --git a/tests/data/test-diff-filter/test31-pr18535-libstdc++-report-0.txt b/tests/data/test-diff-filter/test31-pr18535-libstdc++-report-0.txt
index b1bc0e3a..28feddff 100644
--- a/tests/data/test-diff-filter/test31-pr18535-libstdc++-report-0.txt
+++ b/tests/data/test-diff-filter/test31-pr18535-libstdc++-report-0.txt
@@ -47,7 +47,6 @@ Variable symbols changes summary: 0 Removed, 6 Added variable symbols not refere
       1 enumerator deletion:
         'std::regex_constants::error_type::_S_error_last' value '13'
 
-
 6 Added variable symbols not referenced by debug info:
 
   [A] _ZTISt16bad_array_length@@CXXABI_1.3.8
diff --git a/tests/data/test-diff-filter/test31-pr18535-libstdc++-report-1.txt b/tests/data/test-diff-filter/test31-pr18535-libstdc++-report-1.txt
index 440e5720..ec25bf6d 100644
--- a/tests/data/test-diff-filter/test31-pr18535-libstdc++-report-1.txt
+++ b/tests/data/test-diff-filter/test31-pr18535-libstdc++-report-1.txt
@@ -47,7 +47,6 @@ Variable symbols changes summary: 0 Removed, 6 Added variable symbols not refere
       1 enumerator deletion:
         'std::regex_constants::error_type::_S_error_last' value '13'
 
-
 6 Added variable symbols not referenced by debug info:
 
   [A] _ZTISt16bad_array_length@@CXXABI_1.3.8
diff --git a/tests/data/test-diff-filter/test35-pr18754-no-added-syms-report-0.txt b/tests/data/test-diff-filter/test35-pr18754-no-added-syms-report-0.txt
index 4bda6f6c..c0e56207 100644
--- a/tests/data/test-diff-filter/test35-pr18754-no-added-syms-report-0.txt
+++ b/tests/data/test-diff-filter/test35-pr18754-no-added-syms-report-0.txt
@@ -210,7 +210,6 @@ Variable symbols changes summary: 0 Removed, 0 Added variable symbol not referen
           '__anonymous_enum__::c_report_myorelease' from value '122' to '126'
           '__anonymous_enum__::c_coipipe_max_number' from value '123' to '133'
 
-
   [C] 'method bool OffloadDescriptor::setup_descriptors(VarDesc*, VarDesc2*, int, int, void*)' has some indirect sub-type changes:
     parameter 1 of type 'VarDesc*' has sub-type changes:
       in pointed to type 'struct VarDesc':
diff --git a/tests/data/test-diff-pkg/nss-3.23.0-1.0.fc23.x86_64-report-0.txt b/tests/data/test-diff-pkg/nss-3.23.0-1.0.fc23.x86_64-report-0.txt
index 8c0c6417..f484d0c6 100644
--- a/tests/data/test-diff-pkg/nss-3.23.0-1.0.fc23.x86_64-report-0.txt
+++ b/tests/data/test-diff-pkg/nss-3.23.0-1.0.fc23.x86_64-report-0.txt
@@ -13,7 +13,6 @@
           1 enumerator change:
             '__anonymous_enum__1::SEC_OID_TOTAL' from value '347' to '348' at secoidt.h:34:1
 
-
 ================ end of changes of 'libnss3.so'===============
 
 ================ changes of 'libssl3.so'===============
@@ -35,7 +34,6 @@
           1 enumerator change:
             '__anonymous_enum__::ssl_kea_size' from value '5' to '6' at sslt.h:40:1
 
-
     [C] 'function SECStatus SSL_GetCipherSuiteInfo(PRUint16, SSLCipherSuiteInfo*, PRUintn)' at sslinfo.c:294:1 has some indirect sub-type changes:
       parameter 2 of type 'SSLCipherSuiteInfo*' has sub-type changes:
         in pointed to type 'typedef SSLCipherSuiteInfo' at sslt.h:252:1:
@@ -58,7 +56,6 @@
                     '__anonymous_enum__::ssl_auth_psk' value '9'
                     '__anonymous_enum__::ssl_auth_size' value '10'
 
-
   1 Changed variable:
 
     [C] 'const PRUint16 SSL_ImplementedCiphers[74]' was changed to 'const PRUint16 SSL_ImplementedCiphers[69]' at sslenum.c:51:1:
@@ -110,6 +107,5 @@
                                                   1 enumerator change:
                                                     '__anonymous_enum__1::SEC_OID_TOTAL' from value '347' to '348' at secoidt.h:34:1
 
-
 ================ end of changes of 'libsmime3.so'===============
 
diff --git a/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-0.txt b/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-0.txt
index 231ae0c8..f3b5b686 100644
--- a/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-0.txt
+++ b/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-0.txt
@@ -44,7 +44,6 @@
             'SpiceImageCompression::SPICE_IMAGE_COMPRESSION_LZ4' value '7'
             'SpiceImageCompression::SPICE_IMAGE_COMPRESSION_ENUM_END' value '8'
 
-
     [C] 'function int spice_server_set_image_compression(SpiceServer*, spice_image_compression_t)' at reds.c:3602:1 has some indirect sub-type changes:
       parameter 2 of type 'typedef spice_image_compression_t' changed:
         typedef name changed from spice_image_compression_t to SpiceImageCompression at enums.h:197:1
diff --git a/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-1.txt b/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-1.txt
index 5b8e4781..0cb9723d 100644
--- a/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-1.txt
+++ b/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-1.txt
@@ -44,7 +44,6 @@
             'SpiceImageCompression::SPICE_IMAGE_COMPRESSION_LZ4' value '7'
             'SpiceImageCompression::SPICE_IMAGE_COMPRESSION_ENUM_END' value '8'
 
-
     [C] 'function int spice_server_set_image_compression(SpiceServer*, spice_image_compression_t)' at reds.c:3602:1 has some indirect sub-type changes:
       parameter 2 of type 'typedef spice_image_compression_t' changed:
         typedef name changed from spice_image_compression_t to SpiceImageCompression at enums.h:197:1
diff --git a/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-2.txt b/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-2.txt
index 055cb597..6d9beb85 100644
--- a/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-2.txt
+++ b/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-2.txt
@@ -450,7 +450,6 @@
             'SpiceImageCompression::SPICE_IMAGE_COMPRESSION_LZ' value '6'
             'SpiceImageCompression::SPICE_IMAGE_COMPRESSION_LZ4' value '7'
             'SpiceImageCompression::SPICE_IMAGE_COMPRESSION_ENUM_END' value '8'
-
       parameter 1 of type 'SpiceServer*' has sub-type changes:
         pointed to type 'typedef SpiceServer' changed at spice.h:440:1, as reported earlier
 
diff --git a/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-3.txt b/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-3.txt
index 11cd5682..2ed87e92 100644
--- a/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-3.txt
+++ b/tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-3.txt
@@ -40,7 +40,6 @@ Leaf changes summary: 11 artifacts changed (7 filtered out)
       'SpiceImageCompression::SPICE_IMAGE_COMPRESSION_LZ' value '6'
       'SpiceImageCompression::SPICE_IMAGE_COMPRESSION_LZ4' value '7'
       'SpiceImageCompression::SPICE_IMAGE_COMPRESSION_ENUM_END' value '8'
-
     2 impacted interfaces:
       function spice_image_compression_t spice_server_get_image_compression(SpiceServer*)
       function int spice_server_set_image_compression(SpiceServer*, spice_image_compression_t)
diff --git a/tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-0.txt b/tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-0.txt
index ced0499d..451a4981 100644
--- a/tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-0.txt
+++ b/tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-0.txt
@@ -59,7 +59,6 @@
         1 enumerator change:
           'tbb::internal::exception_id::eid_max' from value '20' to '21' at tbb_exception.h:79:1
 
-
     [C] 'method void tbb::mutex::scoped_lock::internal_acquire(tbb::mutex&)' at mutex.h:129:1 has some indirect sub-type changes:
       parameter 1 of type 'tbb::mutex&' has sub-type changes:
         in referenced type 'class tbb::mutex' at mutex.h:40:1:
diff --git a/tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-1.txt b/tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-1.txt
index 9cfc3f6a..bef715b6 100644
--- a/tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-1.txt
+++ b/tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-1.txt
@@ -34,7 +34,6 @@
         1 enumerator change:
           'tbb::internal::exception_id::eid_max' from value '20' to '21' at tbb_exception.h:79:1
 
-
     [C] 'method void tbb::mutex::scoped_lock::internal_acquire(tbb::mutex&)' at mutex.h:129:1 has some indirect sub-type changes:
       parameter 1 of type 'tbb::mutex&' has sub-type changes:
         in referenced type 'class tbb::mutex' at mutex.h:40:1:
diff --git a/tests/data/test-diff-suppr/test41-enumerator-changes-report-0.txt b/tests/data/test-diff-suppr/test41-enumerator-changes-report-0.txt
index 653de77f..7dd246c1 100644
--- a/tests/data/test-diff-suppr/test41-enumerator-changes-report-0.txt
+++ b/tests/data/test-diff-suppr/test41-enumerator-changes-report-0.txt
@@ -11,7 +11,6 @@ Variables changes summary: 0 Removed, 0 Changed, 0 Added variable
       1 enumerator change:
         'EnumType1::eenum_count' from value '3' to '4' at test41-enumerator-changes-v1.cc:10:1
 
-
   [C] 'function void foo(EnumType0)' at test41-enumerator-changes-v1.cc:20:1 has some indirect sub-type changes:
     parameter 1 of type 'enum EnumType0' has sub-type changes:
       type size hasn't changed
@@ -20,4 +19,3 @@ Variables changes summary: 0 Removed, 0 Changed, 0 Added variable
       1 enumerator change:
         'EnumType0::enum_count' from value '3' to '4' at test41-enumerator-changes-v1.cc:1:1
 
-
