The following is the output from looking for -Wmaybe-uninitialized appending to the GNU compile options. Not all of these have to be resolved, and some shouldn't be because they are required, but many are problematic.
578 | 300 if (l == en) go to 660
| ^
Warning: 'l' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/common/m_eigen_solver.f90:463:26:
463 | integer i, j, k, l, ml, nl, en, ii, jj, ll, nm, nn, igh, ip1, &
--
589 | if (yr*zzr + yi*zzi >= 0.0d0) go to 310
| ^
Warning: 'zzi' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/common/m_eigen_solver.f90:468:62:
468 | real(kind(0d0)) :: si, sr, ti, tr, xi, xr, yi, yr, zzi, zzr, &
--
589 | if (yr*zzr + yi*zzi >= 0.0d0) go to 310
| ^
Warning: 'zzr' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/common/m_eigen_solver.f90:468:67:
468 | real(kind(0d0)) :: si, sr, ti, tr, xi, xr, yi, yr, zzi, zzr, &
--
358 | dphi = phi(2) - phi(1)
| ^
Warning: 'MEM[(real(kind=8)[0:D.3895] *)_78][1]' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/common/m_helper.fpp:358:30: Warning: 'MEM[(real(kind=8)[0:D.3895] *)_78][0]' may be used uninitialized [-Wmaybe-uninitialized]
[48/62] Building Fortran object CMakeFiles/pre_process.dir/src/pre_process/m_grid.f90.o
[49/62] Building Fortran object CMakeFiles/pre_process.dir/fypp/pre_process/m_model.fpp.f90.o
/Users/henryleberre/dev/MFC/src/pre_process/m_model.fpp:310:21:
--
1500 | q_prim_vf(adv_idx%beg)%sf(i, j, k) = 1d0 - abs(real(H, kind(0d0)))
| ^
Warning: 'REALPART_EXPR <h>' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/pre_process/m_patches.fpp:1395:31:
1395 | complex(kind(0d0)) :: H
--
605 | tr = vr(idx)
| ^
Warning: 'idx' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/pre_process/m_initial_condition.fpp:583:19:
583 | integer idx
--
605 | tr = vr(idx)
| ^
Warning: 'MEM[(real(kind=8)[0:D.3388] *)_147][_111]' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/pre_process/m_initial_condition.fpp:606:20:
606 | ti = vi(idx)
| ^
Warning: 'MEM[(real(kind=8)[0:D.3400] *)_141][_111]' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/pre_process/m_initial_condition.fpp:423:95:
423 | call s_instability_wave(2*pi*4.0/Lx, 2*pi*4.0/Lz, tr, ti, wave_tmp, 2*pi*11d0/31d0)
| ^
Warning: 'lz' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/pre_process/m_initial_condition.fpp:400:33:
400 | real(kind(0d0)) :: Lx, Lz
--
578 | 300 if (l == en) go to 660
| ^
Warning: 'l' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/common/m_eigen_solver.f90:463:26:
463 | integer i, j, k, l, ml, nl, en, ii, jj, ll, nm, nn, igh, ip1, &
--
589 | if (yr*zzr + yi*zzi >= 0.0d0) go to 310
| ^
Warning: 'zzi' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/common/m_eigen_solver.f90:468:62:
468 | real(kind(0d0)) :: si, sr, ti, tr, xi, xr, yi, yr, zzi, zzr, &
--
589 | if (yr*zzr + yi*zzi >= 0.0d0) go to 310
| ^
Warning: 'zzr' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/common/m_eigen_solver.f90:468:67:
468 | real(kind(0d0)) :: si, sr, ti, tr, xi, xr, yi, yr, zzi, zzr, &
--
430 | 0d0, 1d0, 0d0, 0d0, &
| ^
Warning: 'MEM[(real(kind=8)[0:D.3895] *)_78][1]' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/common/m_helper.fpp:430:30: Warning: 'MEM[(real(kind=8)[0:D.3895] *)_78][0]' may be used uninitialized [-Wmaybe-uninitialized]
[74/100] Building Fortran object CMakeFiles/simulation.dir/fypp/simulation/m_mpi_proxy.fpp.f90.o
/Users/henryleberre/dev/MFC/src/simulation/m_mpi_proxy.fpp:140:32:
--
431 | abs(boundary%end - side_pos))
| ^
Warning: 'boundary.beg' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:396:37:
396 | type(bounds_info) :: boundary
--
431 | abs(boundary%end - side_pos))
| ^
Warning: 'boundary.end' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:396:37:
396 | type(bounds_info) :: boundary
--
429 | side_pos = dot_product(pos_vec, dist_sides_vec)
| ^
Warning: 'dist_sides_vec[0]' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:394:88:
394 | real(kind(0d0)), dimension(3) :: pos_vec, centroid_vec, dist_vec, dist_sides_vec, dist_surface_vec
--
429 | side_pos = dot_product(pos_vec, dist_sides_vec)
| ^
Warning: 'dist_sides_vec[1]' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:394:88:
394 | real(kind(0d0)), dimension(3) :: pos_vec, centroid_vec, dist_vec, dist_sides_vec, dist_surface_vec
--
429 | side_pos = dot_product(pos_vec, dist_sides_vec)
| ^
Warning: 'dist_sides_vec[2]' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:394:88:
394 | real(kind(0d0)), dimension(3) :: pos_vec, centroid_vec, dist_vec, dist_sides_vec, dist_surface_vec
--
434 | - radius
| ^
Warning: 'dist_surface_vec[0]' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:394:106:
394 | real(kind(0d0)), dimension(3) :: pos_vec, centroid_vec, dist_vec, dist_sides_vec, dist_surface_vec
--
434 | - radius
| ^
Warning: 'dist_surface_vec[1]' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:394:106:
394 | real(kind(0d0)), dimension(3) :: pos_vec, centroid_vec, dist_vec, dist_sides_vec, dist_surface_vec
--
434 | - radius
| ^
Warning: 'dist_surface_vec[2]' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:394:106:
394 | real(kind(0d0)), dimension(3) :: pos_vec, centroid_vec, dist_vec, dist_sides_vec, dist_surface_vec
--
248 | if (dist == 0) then
| ^
Warning: 'dist' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:167:39:
167 | real(kind(0d0)) :: radius, dist, dist_surf, dist_side, global_dist
--
231 | dist_vec(1) = x_cc(i) - airfoil_grid_l(global_id)%x
| ^
Warning: 'global_id' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:168:28:
168 | integer :: global_id
--
239 | if (dist_side < dist_surf) then
| ^
Warning: 'global_dist' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:167:74:
167 | real(kind(0d0)) :: radius, dist, dist_surf, dist_side, global_dist
--
142 | dist_vec(1) = x_cc(i) - airfoil_grid_l(global_id)%x
| ^
Warning: 'global_id' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:85:28:
85 | integer :: global_id
--
149 | if (dist == 0) then
| ^
Warning: 'global_dist' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_compute_levelset.fpp:84:52:
84 | real(kind(0d0)) :: radius, dist, global_dist
--
660 | end function f_rddot
| ^
Warning: '__result_f_rddot' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_bubbles.fpp:632:4:
632 | function f_rddot(fRho, fP, fR, fV, fR0, fpb, fpbdot, alf, fntait, fBtait, f_bub_adv_src, f_divu)
--
499 | end function f_delta
| ^
Warning: '__result_f_delta' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_monopole.fpp:345:4:
345 | function f_delta(j, k, l, mono_loc, mono_leng, nm, angle, angle_z)
--
206 | f_delta(j, k, l, loc_mono(:, q), length(q), q, angle, angle_z)
| ^
Warning: '__result_f_g' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_monopole.fpp:298:4:
298 | function f_g(the_time, sos, mysos, nm, term_index)
--
212 | f_delta(j, k, l, loc_mono(:, q), length(q), q, angle, angle_z)
| ^
Warning: '__result_f_g' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_monopole.fpp:298:4:
298 | function f_g(the_time, sos, mysos, nm, term_index)
--
263 | mono_E_src(j, k, l) = mono_E_src(j, k, l) + s1*const_sos**2.d0/(n_tait - 1.d0)
| ^
Warning: 's1' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_monopole.fpp:127:44:
127 | real(kind(0d0)) :: s2, const_sos, s1
--
610 | /(s_M - s_P)
| ^
Warning: 'ptilde_r' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:328:45:
328 | real(kind(0d0)) :: ptilde_L, ptilde_R
--
610 | /(s_M - s_P)
| ^
Warning: 'ptilde_l' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:328:35:
328 | real(kind(0d0)) :: ptilde_L, ptilde_R
--
537 | tau_e_R(dir_idx_tau(1)))/rho_R))
| ^
Warning: 'g_l' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:314:30:
314 | real(kind(0d0)) :: G_L, G_R
--
537 | tau_e_R(dir_idx_tau(1)))/rho_R))
| ^
Warning: 'g_r' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:314:35:
314 | real(kind(0d0)) :: G_L, G_R
--
581 | *(5d-1 + sign(5d-1, s_R))
| ^
Warning: 's_l' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:323:30:
323 | real(kind(0d0)) :: s_L, s_R, s_M, s_P, s_S
--
581 | *(5d-1 + sign(5d-1, s_R))
| ^
Warning: 's_r' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:323:35:
323 | real(kind(0d0)) :: s_L, s_R, s_M, s_P, s_S
--
1458 | *(vel_R(dir_idx(1)) + s_P*(xi_R - 1d0))
| ^
Warning: 'nbub_l' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:866:33:
866 | real(kind(0d0)) :: nbub_L, nbub_R
--
1458 | *(vel_R(dir_idx(1)) + s_P*(xi_R - 1d0))
| ^
Warning: 'nbub_r' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:866:41:
866 | real(kind(0d0)) :: nbub_L, nbub_R
--
1425 | + xi_P*(dir_flg(dir_idx(i))*(-1d0*ptilde_R))
| ^
Warning: 'ptilde_l' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:872:35:
872 | real(kind(0d0)) :: ptilde_L, ptilde_R
--
1425 | + xi_P*(dir_flg(dir_idx(i))*(-1d0*ptilde_R))
| ^
Warning: 'ptilde_r' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:872:45:
872 | real(kind(0d0)) :: ptilde_L, ptilde_R
--
2147 | xi_L = (s_L - vel_L(idx1))/(s_L - s_S)
| ^
Warning: 's_l' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:862:30:
862 | real(kind(0d0)) :: s_L, s_R, s_M, s_P, s_S
--
2148 | xi_R = (s_R - vel_R(idx1))/(s_R - s_S)
| ^
Warning: 's_r' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:862:35:
862 | real(kind(0d0)) :: s_L, s_R, s_M, s_P, s_S
--
2148 | xi_R = (s_R - vel_R(idx1))/(s_R - s_S)
| ^
Warning: 's_s' may be used uninitialized [-Wmaybe-uninitialized]
/Users/henryleberre/dev/MFC/src/simulation/m_riemann_solvers.fpp:862:50:
862 | real(kind(0d0)) :: s_L, s_R, s_M, s_P, s_S
The following is the output from looking for
-Wmaybe-uninitialized
appending to the GNU compile options. Not all of these have to be resolved, and some shouldn't be because they are required, but many are problematic.