Skip to content

Fix clang compilation#498

Merged
AlexInLog merged 1 commit into
v2from
fix_clang_compilation
Dec 23, 2023
Merged

Fix clang compilation#498
AlexInLog merged 1 commit into
v2from
fix_clang_compilation

Conversation

@AlexInLog

@AlexInLog AlexInLog commented Dec 23, 2023

Copy link
Copy Markdown
Owner

@AlexInLog AlexInLog marked this pull request as ready for review December 23, 2023 19:42
@github-actions

Copy link
Copy Markdown
Contributor

BENCHMARK RESULTS (AUTOGENERATED)

ci-ubuntu-gcc

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 307.39 ns 1.54 ns 1.24 ns 1.25
Subscribe empty callbacks to empty observable via pipe operator 302.77 ns 1.54 ns 1.24 ns 1.25

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 710.75 ns 0.62 ns 0.62 ns 1.00
from array of 1 - create + subscribe + current_thread 1051.40 ns 4.63 ns 4.63 ns 1.00
concat_as_source of just(1 immediate) create + subscribe 2276.35 ns 79.28 ns 79.59 ns 1.00
defer from array of 1 - defer + create + subscribe + immediate 765.41 ns 0.31 ns 0.31 ns 1.00
interval - interval + take(3) + subscribe + immediate 2152.84 ns 58.01 ns 58.08 ns 1.00
interval - interval + take(3) + subscribe + current_thread 3037.35 ns 32.12 ns 32.12 ns 1.00

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 1084.82 ns 0.31 ns 0.31 ns 1.00
immediate_just+filter(true)+subscribe 889.44 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+skip(1)+subscribe 1017.39 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,1,2)+distinct_until_changed()+subscribe 867.99 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+first()+subscribe 1254.11 ns 0.62 ns 0.62 ns 1.00
immediate_just(1,2)+last()+subscribe 923.01 ns 0.31 ns 0.31 ns 1.00
immediate_just+take_last(1)+subscribe 1128.77 ns 18.82 ns 18.53 ns 1.02

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 279.70 ns 1.54 ns 1.24 ns 1.25
current_thread scheduler create worker + schedule 385.31 ns 5.56 ns 5.55 ns 1.00
current_thread scheduler create worker + schedule + recursive schedule 849.02 ns 63.57 ns 63.39 ns 1.00

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 859.36 ns 0.31 ns 0.31 ns 1.00
immediate_just+scan(10, std::plus)+subscribe 904.68 ns 0.31 ns 0.31 ns 1.00
immediate_just+flat_map(immediate_just(v*2))+subscribe 2361.79 ns 98.48 ns 100.53 ns 0.98
immediate_just+buffer(2)+subscribe 1559.00 ns 14.51 ns 14.21 ns 1.02
immediate_just+window(2)+subscribe + subscsribe inner 2410.69 ns 751.37 ns 720.55 ns 1.04

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 834.72 ns - - 0.00
immediate_just+take_while(true)+subscribe 856.04 ns 0.31 ns 0.31 ns 1.00

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 1983.98 ns 0.31 ns 0.31 ns 1.00

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 3408.27 ns 116.02 ns 112.62 ns 1.03
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 3669.44 ns 112.07 ns 109.76 ns 1.02
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 87.41 ns 84.88 ns 1.03
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 3562.81 ns 474.33 ns 484.11 ns 0.98

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 34.49 ns 23.49 ns 49.92 ns 0.47

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 1470.61 ns 14.82 ns 14.82 ns 1.00
basic sample with immediate scheduler 1407.45 ns 5.55 ns 5.55 ns 1.00

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 916.98 ns 0.31 ns 0.31 ns 1.00

ci-macos

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 980.47 ns 3.03 ns 3.41 ns 0.89
Subscribe empty callbacks to empty observable via pipe operator 983.48 ns 3.03 ns 3.40 ns 0.89

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 1951.27 ns 0.23 ns 0.51 ns 0.46
from array of 1 - create + subscribe + current_thread 2458.24 ns 25.72 ns 8.91 ns 2.89
concat_as_source of just(1 immediate) create + subscribe 5466.37 ns 250.53 ns 297.00 ns 0.84
defer from array of 1 - defer + create + subscribe + immediate 1907.09 ns 0.22 ns 0.28 ns 0.79
interval - interval + take(3) + subscribe + immediate 4758.21 ns 110.60 ns 91.54 ns 1.21
interval - interval + take(3) + subscribe + current_thread 5796.49 ns 105.72 ns 60.19 ns 1.76

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 2903.21 ns 0.23 ns 0.31 ns 0.76
immediate_just+filter(true)+subscribe 2143.15 ns 0.23 ns 0.33 ns 0.70
immediate_just(1,2)+skip(1)+subscribe 2753.12 ns 0.23 ns 0.28 ns 0.82
immediate_just(1,1,2)+distinct_until_changed()+subscribe 2050.72 ns 0.46 ns 0.65 ns 0.70
immediate_just(1,2)+first()+subscribe 3230.65 ns 0.23 ns 0.28 ns 0.84
immediate_just(1,2)+last()+subscribe 2355.16 ns 0.23 ns 0.28 ns 0.81
immediate_just+take_last(1)+subscribe 3144.48 ns 70.33 ns 78.65 ns 0.89

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 834.98 ns 2.52 ns 3.92 ns 0.64
current_thread scheduler create worker + schedule 1157.05 ns 34.36 ns 13.92 ns 2.47
current_thread scheduler create worker + schedule + recursive schedule 1914.40 ns 209.27 ns 156.51 ns 1.34

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 2066.18 ns 0.22 ns 0.28 ns 0.79
immediate_just+scan(10, std::plus)+subscribe 2261.92 ns 0.46 ns 0.58 ns 0.79
immediate_just+flat_map(immediate_just(v*2))+subscribe 5122.11 ns 316.74 ns 1612.18 ns 0.20
immediate_just+buffer(2)+subscribe 2409.06 ns 67.67 ns 75.66 ns 0.89
immediate_just+window(2)+subscribe + subscsribe inner 5238.56 ns 1820.60 ns 2693.01 ns 0.68

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 2068.33 ns - - 0.00
immediate_just+take_while(true)+subscribe 2062.02 ns 0.22 ns 0.28 ns 0.79

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 4932.67 ns 0.23 ns 0.28 ns 0.82

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 7202.43 ns 350.38 ns 486.38 ns 0.72
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 8069.75 ns 361.51 ns 395.37 ns 0.91
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 379.12 ns 409.21 ns 0.93
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 7728.76 ns 1335.52 ns 1685.37 ns 0.79

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 72.51 ns 68.06 ns 90.93 ns 0.75

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 2663.65 ns 107.50 ns 45.41 ns 2.37
basic sample with immediate scheduler 2871.26 ns 14.95 ns 6.54 ns 2.29

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 2284.35 ns 0.23 ns 0.28 ns 0.81

ci-ubuntu-clang

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 276.41 ns 0.88 ns 0.88 ns 1.00
Subscribe empty callbacks to empty observable via pipe operator 271.11 ns 0.88 ns 0.88 ns 1.00

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 562.26 ns 0.31 ns 0.31 ns 1.00
from array of 1 - create + subscribe + current_thread 788.87 ns 5.55 ns 5.56 ns 1.00
concat_as_source of just(1 immediate) create + subscribe 1881.29 ns 71.95 ns 72.71 ns 0.99
defer from array of 1 - defer + create + subscribe + immediate 587.03 ns 0.31 ns 0.31 ns 1.00
interval - interval + take(3) + subscribe + immediate 1503.18 ns 57.09 ns 57.07 ns 1.00
interval - interval + take(3) + subscribe + current_thread 2102.43 ns 30.88 ns 30.90 ns 1.00

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 926.72 ns 0.31 ns 0.31 ns 1.00
immediate_just+filter(true)+subscribe 658.16 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+skip(1)+subscribe 837.78 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,1,2)+distinct_until_changed()+subscribe 726.11 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+first()+subscribe 1055.71 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+last()+subscribe 773.97 ns 0.31 ns 0.31 ns 1.00
immediate_just+take_last(1)+subscribe 952.33 ns 0.31 ns 0.31 ns 1.00

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 193.56 ns 0.88 ns 0.88 ns 1.00
current_thread scheduler create worker + schedule 305.56 ns 5.56 ns 5.56 ns 1.00
current_thread scheduler create worker + schedule + recursive schedule 628.83 ns 58.19 ns 58.01 ns 1.00

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 651.37 ns 0.31 ns 0.31 ns 1.00
immediate_just+scan(10, std::plus)+subscribe 699.77 ns 0.31 ns 0.31 ns 1.00
immediate_just+flat_map(immediate_just(v*2))+subscribe 1823.23 ns 77.85 ns 80.86 ns 0.96
immediate_just+buffer(2)+subscribe 1375.55 ns 13.28 ns 14.51 ns 0.91
immediate_just+window(2)+subscribe + subscsribe inner 2131.84 ns 614.81 ns 668.31 ns 0.92

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 663.64 ns - - 0.00
immediate_just+take_while(true)+subscribe 650.17 ns 0.31 ns 0.31 ns 1.00

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 1580.49 ns 0.31 ns 0.31 ns 1.00

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 2524.93 ns 85.47 ns 88.41 ns 0.97
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 2985.71 ns 94.38 ns 96.33 ns 0.98
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 80.73 ns 82.39 ns 0.98
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 2644.04 ns 545.54 ns 541.47 ns 1.01

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 26.21 ns 24.41 ns 24.35 ns 1.00

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 1059.83 ns 13.57 ns 13.58 ns 1.00
basic sample with immediate scheduler 1033.76 ns 6.17 ns 6.17 ns 1.00

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 745.31 ns 0.31 ns 0.31 ns 1.00

ci-windows

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 569.19 ns 2.47 ns 2.47 ns 1.00
Subscribe empty callbacks to empty observable via pipe operator 583.75 ns 2.47 ns 2.47 ns 1.00

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 1165.08 ns 4.93 ns 4.94 ns 1.00
from array of 1 - create + subscribe + current_thread 1434.87 ns 19.76 ns 19.76 ns 1.00
concat_as_source of just(1 immediate) create + subscribe 4587.16 ns 156.88 ns 154.61 ns 1.01
defer from array of 1 - defer + create + subscribe + immediate 1215.52 ns 4.93 ns 4.93 ns 1.00
interval - interval + take(3) + subscribe + immediate 2973.06 ns 129.50 ns 129.57 ns 1.00
interval - interval + take(3) + subscribe + current_thread 3462.95 ns 59.92 ns 59.90 ns 1.00

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 1867.82 ns 12.87 ns 12.84 ns 1.00
immediate_just+filter(true)+subscribe 1353.69 ns 12.34 ns 12.32 ns 1.00
immediate_just(1,2)+skip(1)+subscribe 1744.90 ns 13.28 ns 13.16 ns 1.01
immediate_just(1,1,2)+distinct_until_changed()+subscribe 1391.05 ns 15.80 ns 15.78 ns 1.00
immediate_just(1,2)+first()+subscribe 2073.59 ns 12.65 ns 12.65 ns 1.00
immediate_just(1,2)+last()+subscribe 1489.88 ns 14.13 ns 14.10 ns 1.00
immediate_just+take_last(1)+subscribe 2051.68 ns 60.81 ns 58.80 ns 1.03

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 489.81 ns 4.94 ns 4.94 ns 1.00
current_thread scheduler create worker + schedule 668.02 ns 16.06 ns 16.04 ns 1.00
current_thread scheduler create worker + schedule + recursive schedule 1094.71 ns 105.34 ns 105.60 ns 1.00

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 1340.21 ns 12.33 ns 12.34 ns 1.00
immediate_just+scan(10, std::plus)+subscribe 1445.27 ns 21.59 ns 21.58 ns 1.00
immediate_just+flat_map(immediate_just(v*2))+subscribe 3979.00 ns 200.99 ns 199.09 ns 1.01
immediate_just+buffer(2)+subscribe 2332.79 ns 62.56 ns 61.48 ns 1.02
immediate_just+window(2)+subscribe + subscsribe inner 4147.98 ns 1104.09 ns 1092.17 ns 1.01

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 1339.65 ns 11.45 ns 11.45 ns 1.00
immediate_just+take_while(true)+subscribe 1339.29 ns 12.33 ns 12.33 ns 1.00

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 3203.11 ns 7.71 ns 7.71 ns 1.00

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 5435.90 ns 245.03 ns 238.19 ns 1.03
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 6525.00 ns 213.05 ns 213.19 ns 1.00
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 220.34 ns 219.04 ns 1.01
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 5865.82 ns 735.82 ns 738.62 ns 1.00

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 36.03 ns 36.13 ns 36.12 ns 1.00

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 1877.11 ns 60.16 ns 60.72 ns 0.99
basic sample with immediate scheduler 1898.01 ns 35.17 ns 35.17 ns 1.00

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 1734.63 ns 19.98 ns 20.00 ns 1.00

@codecov

codecov Bot commented Dec 23, 2023

Copy link
Copy Markdown

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (085140d) 95.54% compared to head (39e2c1b) 95.54%.

Additional details and impacted files
@@           Coverage Diff           @@
##               v2     #498   +/-   ##
=======================================
  Coverage   95.54%   95.54%           
=======================================
  Files          76       76           
  Lines        1906     1907    +1     
=======================================
+ Hits         1821     1822    +1     
  Misses         85       85           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@sonarqubecloud

Copy link
Copy Markdown

@AlexInLog AlexInLog merged commit fc9f745 into v2 Dec 23, 2023
@AlexInLog AlexInLog deleted the fix_clang_compilation branch December 23, 2023 20:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant