Skip to content

Commit 1586338

Browse files
committed
Better formating for the unrolled code to avoid GCC warnings
1 parent d985b1d commit 1586338

2 files changed

Lines changed: 35 additions & 14 deletions

File tree

include/boost/container/experimental/segmented_copy.hpp

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -54,22 +54,36 @@ segduo<RASrcIter, DstIter> segmented_copy_dst_bounded
5454
difference_type n = last - first;
5555

5656
while(n >= difference_type(4)) {
57-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first;
58-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first;
59-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first;
60-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first;
57+
if(dst_first == dst_last)
58+
goto out_path;
59+
*dst_first = *first; ++first; ++dst_first;
60+
if(dst_first == dst_last)
61+
goto out_path;
62+
*dst_first = *first; ++first; ++dst_first;
63+
if(dst_first == dst_last)
64+
goto out_path;
65+
*dst_first = *first; ++first; ++dst_first;
66+
if(dst_first == dst_last)
67+
goto out_path;
68+
*dst_first = *first; ++first; ++dst_first;
6169
n -= 4;
6270
}
6371

6472
switch(n) {
6573
case 3:
66-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first;
74+
if(dst_first == dst_last)
75+
goto out_path;
76+
*dst_first = *first; ++first; ++dst_first;
6777
BOOST_FALLTHROUGH;
6878
case 2:
69-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first;
79+
if(dst_first == dst_last)
80+
goto out_path;
81+
*dst_first = *first; ++first; ++dst_first;
7082
BOOST_FALLTHROUGH;
7183
case 1:
72-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first;
84+
if(dst_first == dst_last)
85+
goto out_path;
86+
*dst_first = *first; ++first; ++dst_first;
7387
BOOST_FALLTHROUGH;
7488
default:
7589
break;

include/boost/container/experimental/segmented_copy_n.hpp

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -52,21 +52,28 @@ segduo<RASrcIter, DstIter> segmented_copy_n_dst_bounded
5252
const non_segmented_iterator_tag &, const std::random_access_iterator_tag &)
5353
{
5454
while(count >= Size(4)) {
55-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first; --count;
56-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first; --count;
57-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first; --count;
58-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first; --count;
55+
if(dst_first == dst_last) goto out_path;
56+
*dst_first = *first; ++first; ++dst_first; --count;
57+
if(dst_first == dst_last) goto out_path;
58+
*dst_first = *first; ++first; ++dst_first; --count;
59+
if(dst_first == dst_last) goto out_path;
60+
*dst_first = *first; ++first; ++dst_first; --count;
61+
if(dst_first == dst_last) goto out_path;
62+
*dst_first = *first; ++first; ++dst_first; --count;
5963
}
6064

6165
switch(count) {
6266
case 3:
63-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first; --count;
67+
if(dst_first == dst_last) goto out_path;
68+
*dst_first = *first; ++first; ++dst_first; --count;
6469
BOOST_FALLTHROUGH;
6570
case 2:
66-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first; --count;
71+
if(dst_first == dst_last) goto out_path;
72+
*dst_first = *first; ++first; ++dst_first; --count;
6773
BOOST_FALLTHROUGH;
6874
case 1:
69-
if(dst_first == dst_last) goto out_path; *dst_first = *first; ++first; ++dst_first; --count;
75+
if(dst_first == dst_last) goto out_path;
76+
*dst_first = *first; ++first; ++dst_first; --count;
7077
BOOST_FALLTHROUGH;
7178
default:
7279
break;

0 commit comments

Comments
 (0)