Skip to content

Commit 8548b9b

Browse files
committed
Fix initializer problem.
1 parent 6932cde commit 8548b9b

File tree

5 files changed

+583
-587
lines changed

5 files changed

+583
-587
lines changed

regression-tests/test-results/gcc-13-c++2b/pure2-autodiff.cpp.execution

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ diff(direct return) at (x = 2.000000, x_d = 1.000000, y = 3.000000, y_d = 2.0000
1818
diff(intermediate var) at (x = 2.000000, x_d = 1.000000, y = 3.000000, y_d = 2.000000) = (r = 5.000000, r_d = 3.000000)
1919
diff(intermediate passive var) at (x = 2.000000, x_d = 1.000000, y = 3.000000, y_d = 2.000000) = (r = 5.000000, r_d = 3.000000)
2020
diff(intermediate untyped) at (x = 2.000000, x_d = 1.000000, y = 3.000000, y_d = 2.000000) = (r = 5.000000, r_d = 3.000000)
21+
diff(intermediate default init) at (x = 2.000000, x_d = 1.000000, y = 3.000000, y_d = 2.000000) = (r = 5.000000, r_d = 3.000000)
22+
diff(intermediate no init) at (x = 2.000000, x_d = 1.000000, y = 3.000000, y_d = 2.000000) = (r = 5.000000, r_d = 3.000000)
2123
diff(while loop) at (x = 2.000000, x_d = 1.000000, y = 3.000000, y_d = 2.000000) = (r = 8.000000, r_d = 5.000000)
2224
diff(do while loop) at (x = 2.000000, x_d = 1.000000, y = 3.000000, y_d = 2.000000) = (r = 8.000000, r_d = 5.000000)
2325
diff(for loop) at (x = 2.000000, x_d = 1.000000, y = 3.000000, y_d = 2.000000) = (r = 5.000000, r_d = 3.000000)

regression-tests/test-results/pure2-autodiff.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -675,7 +675,7 @@ int i_d {};
675675
int i {};
676676
r_d = x_d + y_d;
677677
r = x + y;
678-
i_d = 0.0;
678+
i_d = { };
679679
i = 2;
680680
static_cast<void>(cpp2::move(i_d));
681681
static_cast<void>(cpp2::move(i));
@@ -710,7 +710,7 @@ double t_d {};
710710

711711
[[nodiscard]] auto ad_test::intermediate_no_init_diff(cpp2::impl::in<double> x, cpp2::impl::in<double> x_d, cpp2::impl::in<double> y, cpp2::impl::in<double> y_d) -> intermediate_no_init_diff_ret{
712712
double r {0.0};
713-
double r_d {0.0};r_d = 0.0;
713+
double r_d {0.0};r_d = { };
714714
r = 0.0;
715715

716716
cpp2::impl::deferred_init<double> t_d;
@@ -726,7 +726,7 @@ double t_d {};
726726
[[nodiscard]] auto ad_test::while_loop_diff(cpp2::impl::in<double> x, cpp2::impl::in<double> x_d, cpp2::impl::in<double> y, cpp2::impl::in<double> y_d) -> while_loop_diff_ret{
727727
double r {0.0};
728728
double r_d {0.0};
729-
int i_d {0.0};
729+
int i_d {};
730730

731731
int i {0};
732732
r_d = x_d;
@@ -741,7 +741,7 @@ int i_d {0.0};
741741
[[nodiscard]] auto ad_test::do_while_loop_diff(cpp2::impl::in<double> x, cpp2::impl::in<double> x_d, cpp2::impl::in<double> y, cpp2::impl::in<double> y_d) -> do_while_loop_diff_ret{
742742
double r {0.0};
743743
double r_d {0.0};
744-
int i_d {0.0};
744+
int i_d {};
745745

746746
int i {0};
747747
r_d = x_d;
@@ -768,7 +768,7 @@ std::vector<double> v_d {};
768768
CPP2_UFCS(push_back)(v_d, x_d);
769769
CPP2_UFCS(push_back)(v, y);
770770
CPP2_UFCS(push_back)(v_d, y_d);
771-
r_d = 0.0;
771+
r_d = { };
772772
r = 0.0;
773773
{
774774
auto t_d_iter{CPP2_UFCS(begin)(cpp2::move(v_d))};

regression-tests/test-results/pure2-autodiff.cpp2.output

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -610,7 +610,7 @@ ad_test:/* @autodiff @print */ type =
610610
i: int = ();
611611
r_d = x_d + y_d;
612612
r = x + y;
613-
i_d = 0.0;
613+
i_d = ();
614614
i = 2;
615615
_ = i_d;
616616
_ = i;
@@ -665,7 +665,7 @@ ad_test:/* @autodiff @print */ type =
665665
out r_d: double = 0.0,
666666
) =
667667
{
668-
r_d = 0.0;
668+
r_d = ();
669669
r = 0.0;
670670
t_d: double;
671671
t: double;
@@ -686,7 +686,7 @@ ad_test:/* @autodiff @print */ type =
686686
out r_d: double = 0.0,
687687
) =
688688
{
689-
i_d: int = 0.0;
689+
i_d: int = ();
690690
i: int = 0;
691691
r_d = x_d;
692692
r = x;
@@ -709,7 +709,7 @@ ad_test:/* @autodiff @print */ type =
709709
out r_d: double = 0.0,
710710
) =
711711
{
712-
i_d: int = 0.0;
712+
i_d: int = ();
713713
i: int = 0;
714714
r_d = x_d;
715715
r = x;
@@ -739,7 +739,7 @@ ad_test:/* @autodiff @print */ type =
739739
v_d.push_back(x_d);
740740
v.push_back(y);
741741
v_d.push_back(y_d);
742-
r_d = 0.0;
742+
r_d = ();
743743
r = 0.0;
744744
(copy t_d_iter: _ = v_d.begin(), )
745745
for v

0 commit comments

Comments
 (0)