* installing *source* package 'BioCro' ...
** this is package 'BioCro' version '3.2.0'
** package 'BioCro' successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: 'g++.exe (GCC) 14.2.0'
using C++11
make[1]: Entering directory '/d/temp/2025_06_29_01_50_00_26597/RtmpsvY45t/R.INSTALL264e024b448f2/BioCro/src'
g++  -std=gnu++11 -MT R_dynamical_system.o -MMD -MP -MF .deps/R_dynamical_system.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o R_dynamical_system.o R_dynamical_system.cpp
mv -f .deps/R_dynamical_system.Td .deps/R_dynamical_system.d && touch R_dynamical_system.o
g++  -std=gnu++11 -MT R_framework_version.o -MMD -MP -MF .deps/R_framework_version.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o R_framework_version.o R_framework_version.cpp
mv -f .deps/R_framework_version.Td .deps/R_framework_version.d && touch R_framework_version.o
g++  -std=gnu++11 -MT R_get_all_ode_solvers.o -MMD -MP -MF .deps/R_get_all_ode_solvers.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o R_get_all_ode_solvers.o R_get_all_ode_solvers.cpp
mv -f .deps/R_get_all_ode_solvers.Td .deps/R_get_all_ode_solvers.d && touch R_get_all_ode_solvers.o
g++  -std=gnu++11 -MT R_module_library.o -MMD -MP -MF .deps/R_module_library.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o R_module_library.o R_module_library.cpp
mv -f .deps/R_module_library.Td .deps/R_module_library.d && touch R_module_library.o
g++  -std=gnu++11 -MT R_modules.o -MMD -MP -MF .deps/R_modules.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o R_modules.o R_modules.cpp
mv -f .deps/R_modules.Td .deps/R_modules.d && touch R_modules.o
g++  -std=gnu++11 -MT R_run_biocro.o -MMD -MP -MF .deps/R_run_biocro.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o R_run_biocro.o R_run_biocro.cpp
mv -f .deps/R_run_biocro.Td .deps/R_run_biocro.d && touch R_run_biocro.o
g++  -std=gnu++11 -MT R_system_derivatives.o -MMD -MP -MF .deps/R_system_derivatives.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o R_system_derivatives.o R_system_derivatives.cpp
mv -f .deps/R_system_derivatives.Td .deps/R_system_derivatives.d && touch R_system_derivatives.o
g++  -std=gnu++11 -MT init.o -MMD -MP -MF .deps/init.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o init.o init.cpp
mv -f .deps/init.Td .deps/init.d && touch init.o
g++  -std=gnu++11 -MT module_library/AuxBioCro.o -MMD -MP -MF .deps/module_library/AuxBioCro.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/AuxBioCro.o module_library/AuxBioCro.cpp
mv -f .deps/module_library/AuxBioCro.Td .deps/module_library/AuxBioCro.d && touch module_library/AuxBioCro.o
g++  -std=gnu++11 -MT module_library/CanAC.o -MMD -MP -MF .deps/module_library/CanAC.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/CanAC.o module_library/CanAC.cpp
mv -f .deps/module_library/CanAC.Td .deps/module_library/CanAC.d && touch module_library/CanAC.o
g++  -std=gnu++11 -MT module_library/FvCB_assim.o -MMD -MP -MF .deps/module_library/FvCB_assim.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/FvCB_assim.o module_library/FvCB_assim.cpp
mv -f .deps/module_library/FvCB_assim.Td .deps/module_library/FvCB_assim.d && touch module_library/FvCB_assim.o
g++  -std=gnu++11 -MT module_library/ball_berry_gs.o -MMD -MP -MF .deps/module_library/ball_berry_gs.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/ball_berry_gs.o module_library/ball_berry_gs.cpp
mv -f .deps/module_library/ball_berry_gs.Td .deps/module_library/ball_berry_gs.d && touch module_library/ball_berry_gs.o
g++  -std=gnu++11 -MT module_library/boundary_layer_conductance.o -MMD -MP -MF .deps/module_library/boundary_layer_conductance.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/boundary_layer_conductance.o module_library/boundary_layer_conductance.cpp
mv -f .deps/module_library/boundary_layer_conductance.Td .deps/module_library/boundary_layer_conductance.d && touch module_library/boundary_layer_conductance.o
g++  -std=gnu++11 -MT module_library/c3CanAC.o -MMD -MP -MF .deps/module_library/c3CanAC.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/c3CanAC.o module_library/c3CanAC.cpp
mv -f .deps/module_library/c3CanAC.Td .deps/module_library/c3CanAC.d && touch module_library/c3CanAC.o
g++  -std=gnu++11 -MT module_library/c3_canopy.o -MMD -MP -MF .deps/module_library/c3_canopy.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/c3_canopy.o module_library/c3_canopy.cpp
In file included from module_library/c3_canopy.cpp:4:
module_library/c3_canopy.h: In constructor 'standardBML::c3_canopy::c3_canopy(const state_map&, state_map*)':
module_library/c3_canopy.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:18:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
   18 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:19:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   19 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     double const& atmospheric_scattering;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:20:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_scattering"), std::allocator<char>()))'
   20 |           atmospheric_scattering{get_input(input_quantities, "atmospheric_scattering")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     double const& atmospheric_transmittance;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:21:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_transmittance"), std::allocator<char>()))'
   21 |           atmospheric_transmittance{get_input(input_quantities, "atmospheric_transmittance")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     double const& b0;
      |                   ^~
module_library/c3_canopy.h:22:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   22 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:102:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  102 |     double const& b1;
      |                   ^~
module_library/c3_canopy.h:23:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   23 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:103:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  103 |     double const& beta_PSII;
      |                   ^~~~~~~~~
module_library/c3_canopy.h:24:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"beta_PSII"), std::allocator<char>()))'
   24 |           beta_PSII{get_input(input_quantities, "beta_PSII")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:104:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  104 |     double const& Catm;
      |                   ^~~~
module_library/c3_canopy.h:25:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   25 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:105:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  105 |     double const& chil;
      |                   ^~~~
module_library/c3_canopy.h:26:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"chil"), std::allocator<char>()))'
   26 |           chil{get_input(input_quantities, "chil")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     double const& cosine_zenith_angle;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:27:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cosine_zenith_angle"), std::allocator<char>()))'
   27 |           cosine_zenith_angle{get_input(input_quantities, "cosine_zenith_angle")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& electrons_per_carboxylation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:28:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_carboxylation"), std::allocator<char>()))'
   28 |           electrons_per_carboxylation{get_input(input_quantities, "electrons_per_carboxylation")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& electrons_per_oxygenation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:29:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_oxygenation"), std::allocator<char>()))'
   29 |           electrons_per_oxygenation{get_input(input_quantities, "electrons_per_oxygenation")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/c3_canopy.h:30:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
   30 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& growth_respiration_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:31:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"growth_respiration_fraction"), std::allocator<char>()))'
   31 |           growth_respiration_fraction{get_input(input_quantities, "growth_respiration_fraction")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& Gs_min;
      |                   ^~~~~~
module_library/c3_canopy.h:32:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs_min"), std::allocator<char>()))'
   32 |           Gs_min{get_input(input_quantities, "Gs_min")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& Gstar_c;
      |                   ^~~~~~~
module_library/c3_canopy.h:33:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_c"), std::allocator<char>()))'
   33 |           Gstar_c{get_input(input_quantities, "Gstar_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& Gstar_Ea;
      |                   ^~~~~~~~
module_library/c3_canopy.h:34:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_Ea"), std::allocator<char>()))'
   34 |           Gstar_Ea{get_input(input_quantities, "Gstar_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& heightf;
      |                   ^~~~~~~
module_library/c3_canopy.h:35:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"heightf"), std::allocator<char>()))'
   35 |           heightf{get_input(input_quantities, "heightf")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& jmax;
      |                   ^~~~
module_library/c3_canopy.h:36:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"jmax"), std::allocator<char>()))'
   36 |           jmax{get_input(input_quantities, "jmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& Jmax_c;
      |                   ^~~~~~
module_library/c3_canopy.h:37:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_c"), std::allocator<char>()))'
   37 |           Jmax_c{get_input(input_quantities, "Jmax_c")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& Jmax_Ea;
      |                   ^~~~~~~
module_library/c3_canopy.h:38:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_Ea"), std::allocator<char>()))'
   38 |           Jmax_Ea{get_input(input_quantities, "Jmax_Ea")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& k_diffuse;
      |                   ^~~~~~~~~
module_library/c3_canopy.h:39:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"k_diffuse"), std::allocator<char>()))'
   39 |           k_diffuse{get_input(input_quantities, "k_diffuse")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& Kc_c;
      |                   ^~~~
module_library/c3_canopy.h:40:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_c"), std::allocator<char>()))'
   40 |           Kc_c{get_input(input_quantities, "Kc_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& Kc_Ea;
      |                   ^~~~~
module_library/c3_canopy.h:41:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_Ea"), std::allocator<char>()))'
   41 |           Kc_Ea{get_input(input_quantities, "Kc_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& Ko_c;
      |                   ^~~~
module_library/c3_canopy.h:42:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_c"), std::allocator<char>()))'
   42 |           Ko_c{get_input(input_quantities, "Ko_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& Ko_Ea;
      |                   ^~~~~
module_library/c3_canopy.h:43:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_Ea"), std::allocator<char>()))'
   43 |           Ko_Ea{get_input(input_quantities, "Ko_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& kpLN;
      |                   ^~~~
module_library/c3_canopy.h:44:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kpLN"), std::allocator<char>()))'
   44 |           kpLN{get_input(input_quantities, "kpLN")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:124:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  124 |     double const& lai;
      |                   ^~~
module_library/c3_canopy.h:45:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   45 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:125:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  125 |     double const& leaf_reflectance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:46:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_nir"), std::allocator<char>()))'
   46 |           leaf_reflectance_nir{get_input(input_quantities, "leaf_reflectance_nir")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:126:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  126 |     double const& leaf_reflectance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:47:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_par"), std::allocator<char>()))'
   47 |           leaf_reflectance_par{get_input(input_quantities, "leaf_reflectance_par")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:127:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  127 |     double const& leaf_transmittance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:48:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_nir"), std::allocator<char>()))'
   48 |           leaf_transmittance_nir{get_input(input_quantities, "leaf_transmittance_nir")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:128:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  128 |     double const& leaf_transmittance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:49:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_par"), std::allocator<char>()))'
   49 |           leaf_transmittance_par{get_input(input_quantities, "leaf_transmittance_par")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:129:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  129 |     double const& LeafN;
      |                   ^~~~~
module_library/c3_canopy.h:50:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafN"), std::allocator<char>()))'
   50 |           LeafN{get_input(input_quantities, "LeafN")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:130:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  130 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/c3_canopy.h:51:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
   51 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:131:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  131 |     double const& lnb0;
      |                   ^~~~
module_library/c3_canopy.h:52:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnb0"), std::allocator<char>()))'
   52 |           lnb0{get_input(input_quantities, "lnb0")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:132:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  132 |     double const& lnb1;
      |                   ^~~~
module_library/c3_canopy.h:53:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnb1"), std::allocator<char>()))'
   53 |           lnb1{get_input(input_quantities, "lnb1")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:133:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  133 |     double const& lnfun;
      |                   ^~~~~
module_library/c3_canopy.h:54:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnfun"), std::allocator<char>()))'
   54 |           lnfun{get_input(input_quantities, "lnfun")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:134:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  134 |     double const& nlayers;
      |                   ^~~~~~~
module_library/c3_canopy.h:55:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nlayers"), std::allocator<char>()))'
   55 |           nlayers{get_input(input_quantities, "nlayers")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:135:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  135 |     double const& O2;
      |                   ^~
module_library/c3_canopy.h:56:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"O2"), std::allocator<char>()))'
   56 |           O2{get_input(input_quantities, "O2")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:136:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  136 |     double const& par_energy_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:57:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_content"), std::allocator<char>()))'
   57 |           par_energy_content{get_input(input_quantities, "par_energy_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:137:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  137 |     double const& par_energy_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:58:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_fraction"), std::allocator<char>()))'
   58 |           par_energy_fraction{get_input(input_quantities, "par_energy_fraction")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:138:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  138 |     double const& phi_PSII_0;
      |                   ^~~~~~~~~~
module_library/c3_canopy.h:59:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_0"), std::allocator<char>()))'
   59 |           phi_PSII_0{get_input(input_quantities, "phi_PSII_0")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:139:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  139 |     double const& phi_PSII_1;
      |                   ^~~~~~~~~~
module_library/c3_canopy.h:60:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_1"), std::allocator<char>()))'
   60 |           phi_PSII_1{get_input(input_quantities, "phi_PSII_1")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:140:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  140 |     double const& phi_PSII_2;
      |                   ^~~~~~~~~~
module_library/c3_canopy.h:61:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_2"), std::allocator<char>()))'
   61 |           phi_PSII_2{get_input(input_quantities, "phi_PSII_2")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:141:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  141 |     double const& Rd;
      |                   ^~
module_library/c3_canopy.h:62:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
   62 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:142:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  142 |     double const& Rd_c;
      |                   ^~~~
module_library/c3_canopy.h:63:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_c"), std::allocator<char>()))'
   63 |           Rd_c{get_input(input_quantities, "Rd_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:143:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  143 |     double const& Rd_Ea;
      |                   ^~~~~
module_library/c3_canopy.h:64:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_Ea"), std::allocator<char>()))'
   64 |           Rd_Ea{get_input(input_quantities, "Rd_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:144:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  144 |     double const& rh;
      |                   ^~
module_library/c3_canopy.h:65:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   65 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:145:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  145 |     double const& solar;
      |                   ^~~~~
module_library/c3_canopy.h:66:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"solar"), std::allocator<char>()))'
   66 |           solar{get_input(input_quantities, "solar")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:146:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  146 |     double const& StomataWS;
      |                   ^~~~~~~~~
module_library/c3_canopy.h:67:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"StomataWS"), std::allocator<char>()))'
   67 |           StomataWS{get_input(input_quantities, "StomataWS")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:147:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  147 |     double const& temp;
      |                   ^~~~
module_library/c3_canopy.h:68:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   68 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:148:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  148 |     double const& theta_0;
      |                   ^~~~~~~
module_library/c3_canopy.h:69:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_0"), std::allocator<char>()))'
   69 |           theta_0{get_input(input_quantities, "theta_0")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:149:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  149 |     double const& theta_1;
      |                   ^~~~~~~
module_library/c3_canopy.h:70:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_1"), std::allocator<char>()))'
   70 |           theta_1{get_input(input_quantities, "theta_1")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:150:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  150 |     double const& theta_2;
      |                   ^~~~~~~
module_library/c3_canopy.h:71:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_2"), std::allocator<char>()))'
   71 |           theta_2{get_input(input_quantities, "theta_2")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:151:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  151 |     double const& Tp_c;
      |                   ^~~~
module_library/c3_canopy.h:72:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_c"), std::allocator<char>()))'
   72 |           Tp_c{get_input(input_quantities, "Tp_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:152:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  152 |     double const& Tp_Ha;
      |                   ^~~~~
module_library/c3_canopy.h:73:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Ha"), std::allocator<char>()))'
   73 |           Tp_Ha{get_input(input_quantities, "Tp_Ha")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:153:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  153 |     double const& Tp_Hd;
      |                   ^~~~~
module_library/c3_canopy.h:74:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Hd"), std::allocator<char>()))'
   74 |           Tp_Hd{get_input(input_quantities, "Tp_Hd")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:154:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  154 |     double const& Tp_S;
      |                   ^~~~
module_library/c3_canopy.h:75:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_S"), std::allocator<char>()))'
   75 |           Tp_S{get_input(input_quantities, "Tp_S")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:155:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  155 |     double const& tpu_rate_max;
      |                   ^~~~~~~~~~~~
module_library/c3_canopy.h:76:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tpu_rate_max"), std::allocator<char>()))'
   76 |           tpu_rate_max{get_input(input_quantities, "tpu_rate_max")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:156:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  156 |     double const& Vcmax_c;
      |                   ^~~~~~~
module_library/c3_canopy.h:77:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_c"), std::allocator<char>()))'
   77 |           Vcmax_c{get_input(input_quantities, "Vcmax_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:157:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  157 |     double const& Vcmax_Ea;
      |                   ^~~~~~~~
module_library/c3_canopy.h:78:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_Ea"), std::allocator<char>()))'
   78 |           Vcmax_Ea{get_input(input_quantities, "Vcmax_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:158:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  158 |     double const& vmax;
      |                   ^~~~
module_library/c3_canopy.h:79:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax"), std::allocator<char>()))'
   79 |           vmax{get_input(input_quantities, "vmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:159:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  159 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/c3_canopy.h:80:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   80 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:160:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  160 |     double const& windspeed_height;
      |                   ^~~~~~~~~~~~~~~~
module_library/c3_canopy.h:81:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed_height"), std::allocator<char>()))'
   81 |           windspeed_height{get_input(input_quantities, "windspeed_height")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mv -f .deps/module_library/c3_canopy.Td .deps/module_library/c3_canopy.d && touch module_library/c3_canopy.o
g++  -std=gnu++11 -MT module_library/c3_leaf_photosynthesis.o -MMD -MP -MF .deps/module_library/c3_leaf_photosynthesis.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/c3_leaf_photosynthesis.o module_library/c3_leaf_photosynthesis.cpp
In file included from module_library/c3_leaf_photosynthesis.cpp:1:
module_library/c3_leaf_photosynthesis.h: In constructor 'standardBML::c3_leaf_photosynthesis::c3_leaf_photosynthesis(const state_map&, state_map*)':
module_library/c3_leaf_photosynthesis.h:92:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   92 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:24:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
   24 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:93:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   93 |     double const& absorbed_ppfd;
      |                   ^~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:25:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_ppfd"), std::allocator<char>()))'
   25 |           absorbed_ppfd{get_input(input_quantities, "absorbed_ppfd")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:94:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   94 |     double const& absorbed_shortwave;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:26:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_shortwave"), std::allocator<char>()))'
   26 |           absorbed_shortwave{get_input(input_quantities, "absorbed_shortwave")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:95:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   95 |     double const& ambient_temperature;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:27:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   27 |           ambient_temperature{get_input(input_quantities, "temp")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:96:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   96 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:28:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   28 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     double const& b0;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:29:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   29 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     double const& b1;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:30:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   30 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     double const& beta_PSII;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:31:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"beta_PSII"), std::allocator<char>()))'
   31 |           beta_PSII{get_input(input_quantities, "beta_PSII")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     double const& Catm;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:32:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   32 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     double const& electrons_per_carboxylation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:33:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_carboxylation"), std::allocator<char>()))'
   33 |           electrons_per_carboxylation{get_input(input_quantities, "electrons_per_carboxylation")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:102:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  102 |     double const& electrons_per_oxygenation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:34:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_oxygenation"), std::allocator<char>()))'
   34 |           electrons_per_oxygenation{get_input(input_quantities, "electrons_per_oxygenation")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:103:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  103 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:35:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
   35 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:104:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  104 |     double const& Gs_min;
      |                   ^~~~~~
module_library/c3_leaf_photosynthesis.h:36:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs_min"), std::allocator<char>()))'
   36 |           Gs_min{get_input(input_quantities, "Gs_min")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:105:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  105 |     double const& Gstar_c;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:37:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_c"), std::allocator<char>()))'
   37 |           Gstar_c{get_input(input_quantities, "Gstar_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     double const& Gstar_Ea;
      |                   ^~~~~~~~
module_library/c3_leaf_photosynthesis.h:38:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_Ea"), std::allocator<char>()))'
   38 |           Gstar_Ea{get_input(input_quantities, "Gstar_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& height;
      |                   ^~~~~~
module_library/c3_leaf_photosynthesis.h:39:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"height"), std::allocator<char>()))'
   39 |           height{get_input(input_quantities, "height")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& jmax;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:40:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"jmax"), std::allocator<char>()))'
   40 |           jmax{get_input(input_quantities, "jmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& Jmax_c;
      |                   ^~~~~~
module_library/c3_leaf_photosynthesis.h:41:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_c"), std::allocator<char>()))'
   41 |           Jmax_c{get_input(input_quantities, "Jmax_c")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& Jmax_Ea;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:42:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_Ea"), std::allocator<char>()))'
   42 |           Jmax_Ea{get_input(input_quantities, "Jmax_Ea")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& Kc_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:43:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_c"), std::allocator<char>()))'
   43 |           Kc_c{get_input(input_quantities, "Kc_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& Kc_Ea;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:44:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_Ea"), std::allocator<char>()))'
   44 |           Kc_Ea{get_input(input_quantities, "Kc_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& Ko_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:45:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_c"), std::allocator<char>()))'
   45 |           Ko_c{get_input(input_quantities, "Ko_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& Ko_Ea;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:46:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_Ea"), std::allocator<char>()))'
   46 |           Ko_Ea{get_input(input_quantities, "Ko_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:47:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
   47 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& O2;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:48:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"O2"), std::allocator<char>()))'
   48 |           O2{get_input(input_quantities, "O2")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& phi_PSII_0;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:49:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_0"), std::allocator<char>()))'
   49 |           phi_PSII_0{get_input(input_quantities, "phi_PSII_0")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& phi_PSII_1;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:50:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_1"), std::allocator<char>()))'
   50 |           phi_PSII_1{get_input(input_quantities, "phi_PSII_1")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& phi_PSII_2;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:51:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_2"), std::allocator<char>()))'
   51 |           phi_PSII_2{get_input(input_quantities, "phi_PSII_2")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& Rd;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:52:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
   52 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& Rd_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:53:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_c"), std::allocator<char>()))'
   53 |           Rd_c{get_input(input_quantities, "Rd_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& Rd_Ea;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:54:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_Ea"), std::allocator<char>()))'
   54 |           Rd_Ea{get_input(input_quantities, "Rd_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& rh;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:55:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   55 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:124:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  124 |     double const& StomataWS;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:56:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"StomataWS"), std::allocator<char>()))'
   56 |           StomataWS{get_input(input_quantities, "StomataWS")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:125:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  125 |     double const& theta_0;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:57:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_0"), std::allocator<char>()))'
   57 |           theta_0{get_input(input_quantities, "theta_0")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:126:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  126 |     double const& theta_1;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:58:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_1"), std::allocator<char>()))'
   58 |           theta_1{get_input(input_quantities, "theta_1")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:127:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  127 |     double const& theta_2;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:59:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_2"), std::allocator<char>()))'
   59 |           theta_2{get_input(input_quantities, "theta_2")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:128:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  128 |     double const& Tp_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:60:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_c"), std::allocator<char>()))'
   60 |           Tp_c{get_input(input_quantities, "Tp_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:129:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  129 |     double const& Tp_Ha;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:61:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Ha"), std::allocator<char>()))'
   61 |           Tp_Ha{get_input(input_quantities, "Tp_Ha")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:130:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  130 |     double const& Tp_Hd;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:62:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Hd"), std::allocator<char>()))'
   62 |           Tp_Hd{get_input(input_quantities, "Tp_Hd")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:131:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  131 |     double const& Tp_S;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:63:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_S"), std::allocator<char>()))'
   63 |           Tp_S{get_input(input_quantities, "Tp_S")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:132:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  132 |     double const& tpu_rate_max;
      |                   ^~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:64:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tpu_rate_max"), std::allocator<char>()))'
   64 |           tpu_rate_max{get_input(input_quantities, "tpu_rate_max")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:133:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  133 |     double const& Vcmax_c;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:65:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_c"), std::allocator<char>()))'
   65 |           Vcmax_c{get_input(input_quantities, "Vcmax_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:134:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  134 |     double const& Vcmax_Ea;
      |                   ^~~~~~~~
module_library/c3_leaf_photosynthesis.h:66:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_Ea"), std::allocator<char>()))'
   66 |           Vcmax_Ea{get_input(input_quantities, "Vcmax_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:135:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  135 |     double const& vmax1;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:67:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax1"), std::allocator<char>()))'
   67 |           vmax1{get_input(input_quantities, "vmax1")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:136:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  136 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:68:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   68 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mv -f .deps/module_library/c3_leaf_photosynthesis.Td .deps/module_library/c3_leaf_photosynthesis.d && touch module_library/c3_leaf_photosynthesis.o
g++  -std=gnu++11 -MT module_library/c3_temperature_response.o -MMD -MP -MF .deps/module_library/c3_temperature_response.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/c3_temperature_response.o module_library/c3_temperature_response.cpp
mv -f .deps/module_library/c3_temperature_response.Td .deps/module_library/c3_temperature_response.d && touch module_library/c3_temperature_response.o
g++  -std=gnu++11 -MT module_library/c3photo.o -MMD -MP -MF .deps/module_library/c3photo.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/c3photo.o module_library/c3photo.cpp
mv -f .deps/module_library/c3photo.Td .deps/module_library/c3photo.d && touch module_library/c3photo.o
g++  -std=gnu++11 -MT module_library/c4_leaf_photosynthesis.o -MMD -MP -MF .deps/module_library/c4_leaf_photosynthesis.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/c4_leaf_photosynthesis.o module_library/c4_leaf_photosynthesis.cpp
In file included from module_library/c4_leaf_photosynthesis.cpp:1:
module_library/c4_leaf_photosynthesis.h: In constructor 'standardBML::c4_leaf_photosynthesis::c4_leaf_photosynthesis(const state_map&, state_map*)':
module_library/c4_leaf_photosynthesis.h:69:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   69 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:24:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
   24 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:70:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   70 |     double const& absorbed_shortwave;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:25:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_shortwave"), std::allocator<char>()))'
   25 |           absorbed_shortwave{get_input(input_quantities, "absorbed_shortwave")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:71:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   71 |     double const& alpha1;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:26:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alpha1"), std::allocator<char>()))'
   26 |           alpha1{get_input(input_quantities, "alpha1")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:72:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   72 |     double const& ambient_temperature;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:27:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   27 |           ambient_temperature{get_input(input_quantities, "temp")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:73:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   73 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:28:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   28 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:74:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   74 |     double const& b0;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:29:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   29 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:75:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   75 |     double const& b1;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:30:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   30 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:76:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   76 |     double const& beta;
      |                   ^~~~
module_library/c4_leaf_photosynthesis.h:31:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"beta"), std::allocator<char>()))'
   31 |           beta{get_input(input_quantities, "beta")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:77:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   77 |     double const& Catm;
      |                   ^~~~
module_library/c4_leaf_photosynthesis.h:32:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   32 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:78:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   78 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:33:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
   33 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:79:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   79 |     double const& Gs_min;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:34:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs_min"), std::allocator<char>()))'
   34 |           Gs_min{get_input(input_quantities, "Gs_min")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:80:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   80 |     double const& incident_ppfd;
      |                   ^~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:35:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"incident_ppfd"), std::allocator<char>()))'
   35 |           incident_ppfd{get_input(input_quantities, "incident_ppfd")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:81:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   81 |     double const& kparm;
      |                   ^~~~~
module_library/c4_leaf_photosynthesis.h:36:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kparm"), std::allocator<char>()))'
   36 |           kparm{get_input(input_quantities, "kparm")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:82:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   82 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/c4_leaf_photosynthesis.h:37:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
   37 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:83:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   83 |     double const& lowerT;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:38:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lowerT"), std::allocator<char>()))'
   38 |           lowerT{get_input(input_quantities, "lowerT")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:84:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   84 |     double const& Rd;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:39:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
   39 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:85:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   85 |     double const& rh;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:40:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   40 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:86:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   86 |     double const& StomataWS;
      |                   ^~~~~~~~~
module_library/c4_leaf_photosynthesis.h:41:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"StomataWS"), std::allocator<char>()))'
   41 |           StomataWS{get_input(input_quantities, "StomataWS")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:87:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   87 |     double const& theta;
      |                   ^~~~~
module_library/c4_leaf_photosynthesis.h:42:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta"), std::allocator<char>()))'
   42 |           theta{get_input(input_quantities, "theta")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:88:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   88 |     double const& upperT;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:43:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"upperT"), std::allocator<char>()))'
   43 |           upperT{get_input(input_quantities, "upperT")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:89:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   89 |     double const& vmax1;
      |                   ^~~~~
module_library/c4_leaf_photosynthesis.h:44:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax1"), std::allocator<char>()))'
   44 |           vmax1{get_input(input_quantities, "vmax1")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:90:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   90 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/c4_leaf_photosynthesis.h:45:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   45 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mv -f .deps/module_library/c4_leaf_photosynthesis.Td .deps/module_library/c4_leaf_photosynthesis.d && touch module_library/c4_leaf_photosynthesis.o
g++  -std=gnu++11 -MT module_library/c4photo.o -MMD -MP -MF .deps/module_library/c4photo.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/c4photo.o module_library/c4photo.cpp
mv -f .deps/module_library/c4photo.Td .deps/module_library/c4photo.d && touch module_library/c4photo.o
g++  -std=gnu++11 -MT module_library/collatz_photo.o -MMD -MP -MF .deps/module_library/collatz_photo.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/collatz_photo.o module_library/collatz_photo.cpp
mv -f .deps/module_library/collatz_photo.Td .deps/module_library/collatz_photo.d && touch module_library/collatz_photo.o
g++  -std=gnu++11 -MT module_library/eC4photo.o -MMD -MP -MF .deps/module_library/eC4photo.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/eC4photo.o module_library/eC4photo.cpp
mv -f .deps/module_library/eC4photo.Td .deps/module_library/eC4photo.d && touch module_library/eC4photo.o
g++  -std=gnu++11 -MT module_library/leaf_energy_balance.o -MMD -MP -MF .deps/module_library/leaf_energy_balance.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/leaf_energy_balance.o module_library/leaf_energy_balance.cpp
mv -f .deps/module_library/leaf_energy_balance.Td .deps/module_library/leaf_energy_balance.d && touch module_library/leaf_energy_balance.o
g++  -std=gnu++11 -MT module_library/lightME.o -MMD -MP -MF .deps/module_library/lightME.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/lightME.o module_library/lightME.cpp
mv -f .deps/module_library/lightME.Td .deps/module_library/lightME.d && touch module_library/lightME.o
g++  -std=gnu++11 -MT module_library/module_library.o -MMD -MP -MF .deps/module_library/module_library.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/module_library.o module_library/module_library.cpp
In file included from module_library/module_library.cpp:12:
module_library/ball_berry.h: In constructor 'standardBML::ball_berry::ball_berry(const state_map&, state_map*)':
module_library/ball_berry.h:44:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   44 |     double const& net_assimilation_rate;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/ball_berry.h:23:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate"), std::allocator<char>()))'
   23 |           net_assimilation_rate{get_input(input_quantities, "net_assimilation_rate")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/ball_berry.h:45:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   45 |     double const& ambient_c;
      |                   ^~~~~~~~~
module_library/ball_berry.h:24:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   24 |           ambient_c{get_input(input_quantities, "Catm")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/ball_berry.h:46:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   46 |     double const& ambient_rh;
      |                   ^~~~~~~~~~
module_library/ball_berry.h:25:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   25 |           ambient_rh{get_input(input_quantities, "rh")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/ball_berry.h:47:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   47 |     double const& b0;
      |                   ^~
module_library/ball_berry.h:26:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   26 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/ball_berry.h:48:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   48 |     double const& b1;
      |                   ^~
module_library/ball_berry.h:27:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   27 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/ball_berry.h:49:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   49 |     double const& gbw;
      |                   ^~~
module_library/ball_berry.h:28:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw"), std::allocator<char>()))'
   28 |           gbw{get_input(input_quantities, "gbw")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/ball_berry.h:50:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   50 |     double const& leaf_temperature;
      |                   ^~~~~~~~~~~~~~~~
module_library/ball_berry.h:29:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_temperature"), std::allocator<char>()))'
   29 |           leaf_temperature{get_input(input_quantities, "leaf_temperature")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/ball_berry.h:51:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   51 |     double const& ambient_air_temperature;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~
module_library/ball_berry.h:30:44: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   30 |           ambient_air_temperature{get_input(input_quantities, "temp")},
      |                                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:14:
module_library/buck_swvp.h: In constructor 'standardBML::buck_swvp::buck_swvp(const state_map&, state_map*)':
module_library/buck_swvp.h:38:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   38 |     double const& temp;
      |                   ^~~~
module_library/buck_swvp.h:26:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   26 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:16:
module_library/c3_assimilation.h: In constructor 'standardBML::c3_assimilation::c3_assimilation(const state_map&, state_map*)':
module_library/c3_assimilation.h:137:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  137 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:77:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   77 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:138:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  138 |     double const& b0;
      |                   ^~
module_library/c3_assimilation.h:78:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   78 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:139:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  139 |     double const& b1;
      |                   ^~
module_library/c3_assimilation.h:79:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   79 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:140:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  140 |     double const& beta_PSII;
      |                   ^~~~~~~~~
module_library/c3_assimilation.h:80:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"beta_PSII"), std::allocator<char>()))'
   80 |           beta_PSII{get_input(input_quantities, "beta_PSII")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:141:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  141 |     double const& Catm;
      |                   ^~~~
module_library/c3_assimilation.h:81:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   81 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:142:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  142 |     double const& electrons_per_carboxylation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:82:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_carboxylation"), std::allocator<char>()))'
   82 |           electrons_per_carboxylation{get_input(input_quantities, "electrons_per_carboxylation")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:143:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  143 |     double const& electrons_per_oxygenation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:83:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_oxygenation"), std::allocator<char>()))'
   83 |           electrons_per_oxygenation{get_input(input_quantities, "electrons_per_oxygenation")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:144:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  144 |     double const& gbw;
      |                   ^~~
module_library/c3_assimilation.h:84:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw"), std::allocator<char>()))'
   84 |           gbw{get_input(input_quantities, "gbw")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:145:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  145 |     double const& Gs_min;
      |                   ^~~~~~
module_library/c3_assimilation.h:85:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs_min"), std::allocator<char>()))'
   85 |           Gs_min{get_input(input_quantities, "Gs_min")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:146:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  146 |     double const& Gstar_c;
      |                   ^~~~~~~
module_library/c3_assimilation.h:86:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_c"), std::allocator<char>()))'
   86 |           Gstar_c{get_input(input_quantities, "Gstar_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:147:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  147 |     double const& Gstar_Ea;
      |                   ^~~~~~~~
module_library/c3_assimilation.h:87:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_Ea"), std::allocator<char>()))'
   87 |           Gstar_Ea{get_input(input_quantities, "Gstar_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:148:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  148 |     double const& jmax;
      |                   ^~~~
module_library/c3_assimilation.h:88:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"jmax"), std::allocator<char>()))'
   88 |           jmax{get_input(input_quantities, "jmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:149:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  149 |     double const& Jmax_c;
      |                   ^~~~~~
module_library/c3_assimilation.h:89:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_c"), std::allocator<char>()))'
   89 |           Jmax_c{get_input(input_quantities, "Jmax_c")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:150:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  150 |     double const& Jmax_Ea;
      |                   ^~~~~~~
module_library/c3_assimilation.h:90:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_Ea"), std::allocator<char>()))'
   90 |           Jmax_Ea{get_input(input_quantities, "Jmax_Ea")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:151:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  151 |     double const& Kc_c;
      |                   ^~~~
module_library/c3_assimilation.h:91:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_c"), std::allocator<char>()))'
   91 |           Kc_c{get_input(input_quantities, "Kc_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:152:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  152 |     double const& Kc_Ea;
      |                   ^~~~~
module_library/c3_assimilation.h:92:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_Ea"), std::allocator<char>()))'
   92 |           Kc_Ea{get_input(input_quantities, "Kc_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:153:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  153 |     double const& Ko_c;
      |                   ^~~~
module_library/c3_assimilation.h:93:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_c"), std::allocator<char>()))'
   93 |           Ko_c{get_input(input_quantities, "Ko_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:154:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  154 |     double const& Ko_Ea;
      |                   ^~~~~
module_library/c3_assimilation.h:94:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_Ea"), std::allocator<char>()))'
   94 |           Ko_Ea{get_input(input_quantities, "Ko_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:155:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  155 |     double const& O2;
      |                   ^~
module_library/c3_assimilation.h:95:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"O2"), std::allocator<char>()))'
   95 |           O2{get_input(input_quantities, "O2")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:156:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  156 |     double const& phi_PSII_0;
      |                   ^~~~~~~~~~
module_library/c3_assimilation.h:96:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_0"), std::allocator<char>()))'
   96 |           phi_PSII_0{get_input(input_quantities, "phi_PSII_0")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:157:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  157 |     double const& phi_PSII_1;
      |                   ^~~~~~~~~~
module_library/c3_assimilation.h:97:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_1"), std::allocator<char>()))'
   97 |           phi_PSII_1{get_input(input_quantities, "phi_PSII_1")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:158:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  158 |     double const& phi_PSII_2;
      |                   ^~~~~~~~~~
module_library/c3_assimilation.h:98:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_2"), std::allocator<char>()))'
   98 |           phi_PSII_2{get_input(input_quantities, "phi_PSII_2")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:159:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  159 |     double const& Qabs;
      |                   ^~~~
module_library/c3_assimilation.h:99:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Qabs"), std::allocator<char>()))'
   99 |           Qabs{get_input(input_quantities, "Qabs")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:160:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  160 |     double const& Rd;
      |                   ^~
module_library/c3_assimilation.h:100:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
  100 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:161:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  161 |     double const& Rd_c;
      |                   ^~~~
module_library/c3_assimilation.h:101:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_c"), std::allocator<char>()))'
  101 |           Rd_c{get_input(input_quantities, "Rd_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:162:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  162 |     double const& Rd_Ea;
      |                   ^~~~~
module_library/c3_assimilation.h:102:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_Ea"), std::allocator<char>()))'
  102 |           Rd_Ea{get_input(input_quantities, "Rd_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:163:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  163 |     double const& rh;
      |                   ^~
module_library/c3_assimilation.h:103:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
  103 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:164:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  164 |     double const& StomataWS;
      |                   ^~~~~~~~~
module_library/c3_assimilation.h:104:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"StomataWS"), std::allocator<char>()))'
  104 |           StomataWS{get_input(input_quantities, "StomataWS")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:165:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  165 |     double const& Tambient;
      |                   ^~~~~~~~
module_library/c3_assimilation.h:105:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
  105 |           Tambient{get_input(input_quantities, "temp")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:166:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  166 |     double const& theta_0;
      |                   ^~~~~~~
module_library/c3_assimilation.h:106:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_0"), std::allocator<char>()))'
  106 |           theta_0{get_input(input_quantities, "theta_0")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:167:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  167 |     double const& theta_1;
      |                   ^~~~~~~
module_library/c3_assimilation.h:107:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_1"), std::allocator<char>()))'
  107 |           theta_1{get_input(input_quantities, "theta_1")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:168:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  168 |     double const& theta_2;
      |                   ^~~~~~~
module_library/c3_assimilation.h:108:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_2"), std::allocator<char>()))'
  108 |           theta_2{get_input(input_quantities, "theta_2")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:169:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  169 |     double const& Tleaf;
      |                   ^~~~~
module_library/c3_assimilation.h:109:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tleaf"), std::allocator<char>()))'
  109 |           Tleaf{get_input(input_quantities, "Tleaf")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:170:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  170 |     double const& Tp_c;
      |                   ^~~~
module_library/c3_assimilation.h:110:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_c"), std::allocator<char>()))'
  110 |           Tp_c{get_input(input_quantities, "Tp_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:171:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  171 |     double const& Tp_Ha;
      |                   ^~~~~
module_library/c3_assimilation.h:111:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Ha"), std::allocator<char>()))'
  111 |           Tp_Ha{get_input(input_quantities, "Tp_Ha")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:172:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  172 |     double const& Tp_Hd;
      |                   ^~~~~
module_library/c3_assimilation.h:112:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Hd"), std::allocator<char>()))'
  112 |           Tp_Hd{get_input(input_quantities, "Tp_Hd")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:173:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  173 |     double const& Tp_S;
      |                   ^~~~
module_library/c3_assimilation.h:113:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_S"), std::allocator<char>()))'
  113 |           Tp_S{get_input(input_quantities, "Tp_S")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:174:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  174 |     double const& tpu_rate_max;
      |                   ^~~~~~~~~~~~
module_library/c3_assimilation.h:114:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tpu_rate_max"), std::allocator<char>()))'
  114 |           tpu_rate_max{get_input(input_quantities, "tpu_rate_max")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:175:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  175 |     double const& Vcmax_c;
      |                   ^~~~~~~
module_library/c3_assimilation.h:115:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_c"), std::allocator<char>()))'
  115 |           Vcmax_c{get_input(input_quantities, "Vcmax_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:176:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  176 |     double const& Vcmax_Ea;
      |                   ^~~~~~~~
module_library/c3_assimilation.h:116:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_Ea"), std::allocator<char>()))'
  116 |           Vcmax_Ea{get_input(input_quantities, "Vcmax_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_assimilation.h:177:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  177 |     double const& vmax1;
      |                   ^~~~~
module_library/c3_assimilation.h:117:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax1"), std::allocator<char>()))'
  117 |           vmax1{get_input(input_quantities, "vmax1")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:17:
module_library/c3_canopy.h: In constructor 'standardBML::c3_canopy::c3_canopy(const state_map&, state_map*)':
module_library/c3_canopy.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:18:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
   18 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:19:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   19 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     double const& atmospheric_scattering;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:20:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_scattering"), std::allocator<char>()))'
   20 |           atmospheric_scattering{get_input(input_quantities, "atmospheric_scattering")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     double const& atmospheric_transmittance;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:21:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_transmittance"), std::allocator<char>()))'
   21 |           atmospheric_transmittance{get_input(input_quantities, "atmospheric_transmittance")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     double const& b0;
      |                   ^~
module_library/c3_canopy.h:22:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   22 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:102:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  102 |     double const& b1;
      |                   ^~
module_library/c3_canopy.h:23:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   23 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:103:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  103 |     double const& beta_PSII;
      |                   ^~~~~~~~~
module_library/c3_canopy.h:24:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"beta_PSII"), std::allocator<char>()))'
   24 |           beta_PSII{get_input(input_quantities, "beta_PSII")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:104:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  104 |     double const& Catm;
      |                   ^~~~
module_library/c3_canopy.h:25:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   25 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:105:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  105 |     double const& chil;
      |                   ^~~~
module_library/c3_canopy.h:26:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"chil"), std::allocator<char>()))'
   26 |           chil{get_input(input_quantities, "chil")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     double const& cosine_zenith_angle;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:27:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cosine_zenith_angle"), std::allocator<char>()))'
   27 |           cosine_zenith_angle{get_input(input_quantities, "cosine_zenith_angle")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& electrons_per_carboxylation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:28:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_carboxylation"), std::allocator<char>()))'
   28 |           electrons_per_carboxylation{get_input(input_quantities, "electrons_per_carboxylation")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& electrons_per_oxygenation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:29:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_oxygenation"), std::allocator<char>()))'
   29 |           electrons_per_oxygenation{get_input(input_quantities, "electrons_per_oxygenation")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/c3_canopy.h:30:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
   30 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& growth_respiration_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:31:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"growth_respiration_fraction"), std::allocator<char>()))'
   31 |           growth_respiration_fraction{get_input(input_quantities, "growth_respiration_fraction")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& Gs_min;
      |                   ^~~~~~
module_library/c3_canopy.h:32:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs_min"), std::allocator<char>()))'
   32 |           Gs_min{get_input(input_quantities, "Gs_min")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& Gstar_c;
      |                   ^~~~~~~
module_library/c3_canopy.h:33:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_c"), std::allocator<char>()))'
   33 |           Gstar_c{get_input(input_quantities, "Gstar_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& Gstar_Ea;
      |                   ^~~~~~~~
module_library/c3_canopy.h:34:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_Ea"), std::allocator<char>()))'
   34 |           Gstar_Ea{get_input(input_quantities, "Gstar_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& heightf;
      |                   ^~~~~~~
module_library/c3_canopy.h:35:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"heightf"), std::allocator<char>()))'
   35 |           heightf{get_input(input_quantities, "heightf")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& jmax;
      |                   ^~~~
module_library/c3_canopy.h:36:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"jmax"), std::allocator<char>()))'
   36 |           jmax{get_input(input_quantities, "jmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& Jmax_c;
      |                   ^~~~~~
module_library/c3_canopy.h:37:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_c"), std::allocator<char>()))'
   37 |           Jmax_c{get_input(input_quantities, "Jmax_c")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& Jmax_Ea;
      |                   ^~~~~~~
module_library/c3_canopy.h:38:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_Ea"), std::allocator<char>()))'
   38 |           Jmax_Ea{get_input(input_quantities, "Jmax_Ea")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& k_diffuse;
      |                   ^~~~~~~~~
module_library/c3_canopy.h:39:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"k_diffuse"), std::allocator<char>()))'
   39 |           k_diffuse{get_input(input_quantities, "k_diffuse")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& Kc_c;
      |                   ^~~~
module_library/c3_canopy.h:40:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_c"), std::allocator<char>()))'
   40 |           Kc_c{get_input(input_quantities, "Kc_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& Kc_Ea;
      |                   ^~~~~
module_library/c3_canopy.h:41:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_Ea"), std::allocator<char>()))'
   41 |           Kc_Ea{get_input(input_quantities, "Kc_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& Ko_c;
      |                   ^~~~
module_library/c3_canopy.h:42:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_c"), std::allocator<char>()))'
   42 |           Ko_c{get_input(input_quantities, "Ko_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& Ko_Ea;
      |                   ^~~~~
module_library/c3_canopy.h:43:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_Ea"), std::allocator<char>()))'
   43 |           Ko_Ea{get_input(input_quantities, "Ko_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& kpLN;
      |                   ^~~~
module_library/c3_canopy.h:44:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kpLN"), std::allocator<char>()))'
   44 |           kpLN{get_input(input_quantities, "kpLN")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:124:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  124 |     double const& lai;
      |                   ^~~
module_library/c3_canopy.h:45:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   45 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:125:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  125 |     double const& leaf_reflectance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:46:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_nir"), std::allocator<char>()))'
   46 |           leaf_reflectance_nir{get_input(input_quantities, "leaf_reflectance_nir")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:126:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  126 |     double const& leaf_reflectance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:47:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_par"), std::allocator<char>()))'
   47 |           leaf_reflectance_par{get_input(input_quantities, "leaf_reflectance_par")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:127:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  127 |     double const& leaf_transmittance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:48:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_nir"), std::allocator<char>()))'
   48 |           leaf_transmittance_nir{get_input(input_quantities, "leaf_transmittance_nir")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:128:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  128 |     double const& leaf_transmittance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:49:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_par"), std::allocator<char>()))'
   49 |           leaf_transmittance_par{get_input(input_quantities, "leaf_transmittance_par")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:129:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  129 |     double const& LeafN;
      |                   ^~~~~
module_library/c3_canopy.h:50:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafN"), std::allocator<char>()))'
   50 |           LeafN{get_input(input_quantities, "LeafN")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:130:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  130 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/c3_canopy.h:51:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
   51 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:131:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  131 |     double const& lnb0;
      |                   ^~~~
module_library/c3_canopy.h:52:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnb0"), std::allocator<char>()))'
   52 |           lnb0{get_input(input_quantities, "lnb0")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:132:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  132 |     double const& lnb1;
      |                   ^~~~
module_library/c3_canopy.h:53:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnb1"), std::allocator<char>()))'
   53 |           lnb1{get_input(input_quantities, "lnb1")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:133:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  133 |     double const& lnfun;
      |                   ^~~~~
module_library/c3_canopy.h:54:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnfun"), std::allocator<char>()))'
   54 |           lnfun{get_input(input_quantities, "lnfun")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:134:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  134 |     double const& nlayers;
      |                   ^~~~~~~
module_library/c3_canopy.h:55:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nlayers"), std::allocator<char>()))'
   55 |           nlayers{get_input(input_quantities, "nlayers")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:135:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  135 |     double const& O2;
      |                   ^~
module_library/c3_canopy.h:56:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"O2"), std::allocator<char>()))'
   56 |           O2{get_input(input_quantities, "O2")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:136:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  136 |     double const& par_energy_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:57:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_content"), std::allocator<char>()))'
   57 |           par_energy_content{get_input(input_quantities, "par_energy_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:137:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  137 |     double const& par_energy_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:58:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_fraction"), std::allocator<char>()))'
   58 |           par_energy_fraction{get_input(input_quantities, "par_energy_fraction")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:138:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  138 |     double const& phi_PSII_0;
      |                   ^~~~~~~~~~
module_library/c3_canopy.h:59:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_0"), std::allocator<char>()))'
   59 |           phi_PSII_0{get_input(input_quantities, "phi_PSII_0")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:139:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  139 |     double const& phi_PSII_1;
      |                   ^~~~~~~~~~
module_library/c3_canopy.h:60:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_1"), std::allocator<char>()))'
   60 |           phi_PSII_1{get_input(input_quantities, "phi_PSII_1")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:140:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  140 |     double const& phi_PSII_2;
      |                   ^~~~~~~~~~
module_library/c3_canopy.h:61:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_2"), std::allocator<char>()))'
   61 |           phi_PSII_2{get_input(input_quantities, "phi_PSII_2")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:141:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  141 |     double const& Rd;
      |                   ^~
module_library/c3_canopy.h:62:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
   62 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:142:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  142 |     double const& Rd_c;
      |                   ^~~~
module_library/c3_canopy.h:63:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_c"), std::allocator<char>()))'
   63 |           Rd_c{get_input(input_quantities, "Rd_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:143:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  143 |     double const& Rd_Ea;
      |                   ^~~~~
module_library/c3_canopy.h:64:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_Ea"), std::allocator<char>()))'
   64 |           Rd_Ea{get_input(input_quantities, "Rd_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:144:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  144 |     double const& rh;
      |                   ^~
module_library/c3_canopy.h:65:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   65 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:145:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  145 |     double const& solar;
      |                   ^~~~~
module_library/c3_canopy.h:66:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"solar"), std::allocator<char>()))'
   66 |           solar{get_input(input_quantities, "solar")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:146:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  146 |     double const& StomataWS;
      |                   ^~~~~~~~~
module_library/c3_canopy.h:67:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"StomataWS"), std::allocator<char>()))'
   67 |           StomataWS{get_input(input_quantities, "StomataWS")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:147:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  147 |     double const& temp;
      |                   ^~~~
module_library/c3_canopy.h:68:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   68 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:148:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  148 |     double const& theta_0;
      |                   ^~~~~~~
module_library/c3_canopy.h:69:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_0"), std::allocator<char>()))'
   69 |           theta_0{get_input(input_quantities, "theta_0")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:149:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  149 |     double const& theta_1;
      |                   ^~~~~~~
module_library/c3_canopy.h:70:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_1"), std::allocator<char>()))'
   70 |           theta_1{get_input(input_quantities, "theta_1")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:150:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  150 |     double const& theta_2;
      |                   ^~~~~~~
module_library/c3_canopy.h:71:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_2"), std::allocator<char>()))'
   71 |           theta_2{get_input(input_quantities, "theta_2")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:151:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  151 |     double const& Tp_c;
      |                   ^~~~
module_library/c3_canopy.h:72:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_c"), std::allocator<char>()))'
   72 |           Tp_c{get_input(input_quantities, "Tp_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:152:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  152 |     double const& Tp_Ha;
      |                   ^~~~~
module_library/c3_canopy.h:73:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Ha"), std::allocator<char>()))'
   73 |           Tp_Ha{get_input(input_quantities, "Tp_Ha")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:153:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  153 |     double const& Tp_Hd;
      |                   ^~~~~
module_library/c3_canopy.h:74:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Hd"), std::allocator<char>()))'
   74 |           Tp_Hd{get_input(input_quantities, "Tp_Hd")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:154:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  154 |     double const& Tp_S;
      |                   ^~~~
module_library/c3_canopy.h:75:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_S"), std::allocator<char>()))'
   75 |           Tp_S{get_input(input_quantities, "Tp_S")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:155:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  155 |     double const& tpu_rate_max;
      |                   ^~~~~~~~~~~~
module_library/c3_canopy.h:76:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tpu_rate_max"), std::allocator<char>()))'
   76 |           tpu_rate_max{get_input(input_quantities, "tpu_rate_max")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:156:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  156 |     double const& Vcmax_c;
      |                   ^~~~~~~
module_library/c3_canopy.h:77:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_c"), std::allocator<char>()))'
   77 |           Vcmax_c{get_input(input_quantities, "Vcmax_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:157:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  157 |     double const& Vcmax_Ea;
      |                   ^~~~~~~~
module_library/c3_canopy.h:78:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_Ea"), std::allocator<char>()))'
   78 |           Vcmax_Ea{get_input(input_quantities, "Vcmax_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:158:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  158 |     double const& vmax;
      |                   ^~~~
module_library/c3_canopy.h:79:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax"), std::allocator<char>()))'
   79 |           vmax{get_input(input_quantities, "vmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:159:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  159 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/c3_canopy.h:80:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   80 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_canopy.h:160:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  160 |     double const& windspeed_height;
      |                   ^~~~~~~~~~~~~~~~
module_library/c3_canopy.h:81:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed_height"), std::allocator<char>()))'
   81 |           windspeed_height{get_input(input_quantities, "windspeed_height")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:18:
module_library/c3_leaf_photosynthesis.h: In constructor 'standardBML::c3_leaf_photosynthesis::c3_leaf_photosynthesis(const state_map&, state_map*)':
module_library/c3_leaf_photosynthesis.h:92:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   92 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:24:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
   24 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:93:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   93 |     double const& absorbed_ppfd;
      |                   ^~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:25:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_ppfd"), std::allocator<char>()))'
   25 |           absorbed_ppfd{get_input(input_quantities, "absorbed_ppfd")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:94:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   94 |     double const& absorbed_shortwave;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:26:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_shortwave"), std::allocator<char>()))'
   26 |           absorbed_shortwave{get_input(input_quantities, "absorbed_shortwave")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:95:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   95 |     double const& ambient_temperature;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:27:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   27 |           ambient_temperature{get_input(input_quantities, "temp")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:96:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   96 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:28:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   28 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     double const& b0;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:29:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   29 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     double const& b1;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:30:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   30 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     double const& beta_PSII;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:31:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"beta_PSII"), std::allocator<char>()))'
   31 |           beta_PSII{get_input(input_quantities, "beta_PSII")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     double const& Catm;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:32:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   32 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     double const& electrons_per_carboxylation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:33:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_carboxylation"), std::allocator<char>()))'
   33 |           electrons_per_carboxylation{get_input(input_quantities, "electrons_per_carboxylation")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:102:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  102 |     double const& electrons_per_oxygenation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:34:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_oxygenation"), std::allocator<char>()))'
   34 |           electrons_per_oxygenation{get_input(input_quantities, "electrons_per_oxygenation")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:103:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  103 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:35:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
   35 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:104:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  104 |     double const& Gs_min;
      |                   ^~~~~~
module_library/c3_leaf_photosynthesis.h:36:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs_min"), std::allocator<char>()))'
   36 |           Gs_min{get_input(input_quantities, "Gs_min")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:105:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  105 |     double const& Gstar_c;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:37:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_c"), std::allocator<char>()))'
   37 |           Gstar_c{get_input(input_quantities, "Gstar_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     double const& Gstar_Ea;
      |                   ^~~~~~~~
module_library/c3_leaf_photosynthesis.h:38:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_Ea"), std::allocator<char>()))'
   38 |           Gstar_Ea{get_input(input_quantities, "Gstar_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& height;
      |                   ^~~~~~
module_library/c3_leaf_photosynthesis.h:39:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"height"), std::allocator<char>()))'
   39 |           height{get_input(input_quantities, "height")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& jmax;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:40:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"jmax"), std::allocator<char>()))'
   40 |           jmax{get_input(input_quantities, "jmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& Jmax_c;
      |                   ^~~~~~
module_library/c3_leaf_photosynthesis.h:41:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_c"), std::allocator<char>()))'
   41 |           Jmax_c{get_input(input_quantities, "Jmax_c")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& Jmax_Ea;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:42:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_Ea"), std::allocator<char>()))'
   42 |           Jmax_Ea{get_input(input_quantities, "Jmax_Ea")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& Kc_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:43:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_c"), std::allocator<char>()))'
   43 |           Kc_c{get_input(input_quantities, "Kc_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& Kc_Ea;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:44:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_Ea"), std::allocator<char>()))'
   44 |           Kc_Ea{get_input(input_quantities, "Kc_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& Ko_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:45:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_c"), std::allocator<char>()))'
   45 |           Ko_c{get_input(input_quantities, "Ko_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& Ko_Ea;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:46:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_Ea"), std::allocator<char>()))'
   46 |           Ko_Ea{get_input(input_quantities, "Ko_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:47:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
   47 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& O2;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:48:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"O2"), std::allocator<char>()))'
   48 |           O2{get_input(input_quantities, "O2")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& phi_PSII_0;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:49:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_0"), std::allocator<char>()))'
   49 |           phi_PSII_0{get_input(input_quantities, "phi_PSII_0")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& phi_PSII_1;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:50:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_1"), std::allocator<char>()))'
   50 |           phi_PSII_1{get_input(input_quantities, "phi_PSII_1")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& phi_PSII_2;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:51:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_2"), std::allocator<char>()))'
   51 |           phi_PSII_2{get_input(input_quantities, "phi_PSII_2")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& Rd;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:52:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
   52 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& Rd_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:53:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_c"), std::allocator<char>()))'
   53 |           Rd_c{get_input(input_quantities, "Rd_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& Rd_Ea;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:54:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_Ea"), std::allocator<char>()))'
   54 |           Rd_Ea{get_input(input_quantities, "Rd_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& rh;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:55:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   55 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:124:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  124 |     double const& StomataWS;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:56:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"StomataWS"), std::allocator<char>()))'
   56 |           StomataWS{get_input(input_quantities, "StomataWS")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:125:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  125 |     double const& theta_0;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:57:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_0"), std::allocator<char>()))'
   57 |           theta_0{get_input(input_quantities, "theta_0")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:126:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  126 |     double const& theta_1;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:58:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_1"), std::allocator<char>()))'
   58 |           theta_1{get_input(input_quantities, "theta_1")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:127:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  127 |     double const& theta_2;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:59:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_2"), std::allocator<char>()))'
   59 |           theta_2{get_input(input_quantities, "theta_2")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:128:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  128 |     double const& Tp_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:60:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_c"), std::allocator<char>()))'
   60 |           Tp_c{get_input(input_quantities, "Tp_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:129:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  129 |     double const& Tp_Ha;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:61:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Ha"), std::allocator<char>()))'
   61 |           Tp_Ha{get_input(input_quantities, "Tp_Ha")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:130:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  130 |     double const& Tp_Hd;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:62:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Hd"), std::allocator<char>()))'
   62 |           Tp_Hd{get_input(input_quantities, "Tp_Hd")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:131:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  131 |     double const& Tp_S;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:63:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_S"), std::allocator<char>()))'
   63 |           Tp_S{get_input(input_quantities, "Tp_S")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:132:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  132 |     double const& tpu_rate_max;
      |                   ^~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:64:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tpu_rate_max"), std::allocator<char>()))'
   64 |           tpu_rate_max{get_input(input_quantities, "tpu_rate_max")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:133:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  133 |     double const& Vcmax_c;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:65:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_c"), std::allocator<char>()))'
   65 |           Vcmax_c{get_input(input_quantities, "Vcmax_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:134:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  134 |     double const& Vcmax_Ea;
      |                   ^~~~~~~~
module_library/c3_leaf_photosynthesis.h:66:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_Ea"), std::allocator<char>()))'
   66 |           Vcmax_Ea{get_input(input_quantities, "Vcmax_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:135:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  135 |     double const& vmax1;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:67:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax1"), std::allocator<char>()))'
   67 |           vmax1{get_input(input_quantities, "vmax1")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:136:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  136 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:68:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   68 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:19:
module_library/c3_parameters.h: In constructor 'standardBML::c3_parameters::c3_parameters(const state_map&, state_map*)':
module_library/c3_parameters.h:65:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   65 |     double const& Gstar_c;
      |                   ^~~~~~~
module_library/c3_parameters.h:23:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_c"), std::allocator<char>()))'
   23 |           Gstar_c{get_input(input_quantities, "Gstar_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:66:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   66 |     double const& Gstar_Ea;
      |                   ^~~~~~~~
module_library/c3_parameters.h:24:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_Ea"), std::allocator<char>()))'
   24 |           Gstar_Ea{get_input(input_quantities, "Gstar_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:67:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   67 |     double const& Jmax_c;
      |                   ^~~~~~
module_library/c3_parameters.h:25:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_c"), std::allocator<char>()))'
   25 |           Jmax_c{get_input(input_quantities, "Jmax_c")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:68:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   68 |     double const& Jmax_Ea;
      |                   ^~~~~~~
module_library/c3_parameters.h:26:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_Ea"), std::allocator<char>()))'
   26 |           Jmax_Ea{get_input(input_quantities, "Jmax_Ea")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:69:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   69 |     double const& Kc_c;
      |                   ^~~~
module_library/c3_parameters.h:27:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_c"), std::allocator<char>()))'
   27 |           Kc_c{get_input(input_quantities, "Kc_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:70:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   70 |     double const& Kc_Ea;
      |                   ^~~~~
module_library/c3_parameters.h:28:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_Ea"), std::allocator<char>()))'
   28 |           Kc_Ea{get_input(input_quantities, "Kc_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:71:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   71 |     double const& Ko_c;
      |                   ^~~~
module_library/c3_parameters.h:29:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_c"), std::allocator<char>()))'
   29 |           Ko_c{get_input(input_quantities, "Ko_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:72:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   72 |     double const& Ko_Ea;
      |                   ^~~~~
module_library/c3_parameters.h:30:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_Ea"), std::allocator<char>()))'
   30 |           Ko_Ea{get_input(input_quantities, "Ko_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:73:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   73 |     double const& phi_PSII_0;
      |                   ^~~~~~~~~~
module_library/c3_parameters.h:31:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_0"), std::allocator<char>()))'
   31 |           phi_PSII_0{get_input(input_quantities, "phi_PSII_0")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:74:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   74 |     double const& phi_PSII_1;
      |                   ^~~~~~~~~~
module_library/c3_parameters.h:32:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_1"), std::allocator<char>()))'
   32 |           phi_PSII_1{get_input(input_quantities, "phi_PSII_1")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:75:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   75 |     double const& phi_PSII_2;
      |                   ^~~~~~~~~~
module_library/c3_parameters.h:33:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_2"), std::allocator<char>()))'
   33 |           phi_PSII_2{get_input(input_quantities, "phi_PSII_2")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:76:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   76 |     double const& Rd_c;
      |                   ^~~~
module_library/c3_parameters.h:34:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_c"), std::allocator<char>()))'
   34 |           Rd_c{get_input(input_quantities, "Rd_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:77:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   77 |     double const& Rd_Ea;
      |                   ^~~~~
module_library/c3_parameters.h:35:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_Ea"), std::allocator<char>()))'
   35 |           Rd_Ea{get_input(input_quantities, "Rd_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:78:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   78 |     double const& theta_0;
      |                   ^~~~~~~
module_library/c3_parameters.h:36:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_0"), std::allocator<char>()))'
   36 |           theta_0{get_input(input_quantities, "theta_0")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:79:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   79 |     double const& theta_1;
      |                   ^~~~~~~
module_library/c3_parameters.h:37:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_1"), std::allocator<char>()))'
   37 |           theta_1{get_input(input_quantities, "theta_1")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:80:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   80 |     double const& theta_2;
      |                   ^~~~~~~
module_library/c3_parameters.h:38:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_2"), std::allocator<char>()))'
   38 |           theta_2{get_input(input_quantities, "theta_2")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:81:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   81 |     double const& Tleaf;
      |                   ^~~~~
module_library/c3_parameters.h:39:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tleaf"), std::allocator<char>()))'
   39 |           Tleaf{get_input(input_quantities, "Tleaf")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:82:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   82 |     double const& Tp_c;
      |                   ^~~~
module_library/c3_parameters.h:40:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_c"), std::allocator<char>()))'
   40 |           Tp_c{get_input(input_quantities, "Tp_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:83:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   83 |     double const& Tp_Ha;
      |                   ^~~~~
module_library/c3_parameters.h:41:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Ha"), std::allocator<char>()))'
   41 |           Tp_Ha{get_input(input_quantities, "Tp_Ha")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:84:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   84 |     double const& Tp_Hd;
      |                   ^~~~~
module_library/c3_parameters.h:42:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Hd"), std::allocator<char>()))'
   42 |           Tp_Hd{get_input(input_quantities, "Tp_Hd")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:85:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   85 |     double const& Tp_S;
      |                   ^~~~
module_library/c3_parameters.h:43:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_S"), std::allocator<char>()))'
   43 |           Tp_S{get_input(input_quantities, "Tp_S")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:86:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   86 |     double const& Vcmax_c;
      |                   ^~~~~~~
module_library/c3_parameters.h:44:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_c"), std::allocator<char>()))'
   44 |           Vcmax_c{get_input(input_quantities, "Vcmax_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_parameters.h:87:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   87 |     double const& Vcmax_Ea;
      |                   ^~~~~~~~
module_library/c3_parameters.h:45:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_Ea"), std::allocator<char>()))'
   45 |           Vcmax_Ea{get_input(input_quantities, "Vcmax_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:20:
module_library/c4_assimilation.h: In constructor 'standardBML::c4_assimilation::c4_assimilation(const state_map&, state_map*)':
module_library/c4_assimilation.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& Qp;
      |                   ^~
module_library/c4_assimilation.h:76:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Qp"), std::allocator<char>()))'
   76 |           Qp{get_input(input_quantities, "Qp")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& Tleaf;
      |                   ^~~~~
module_library/c4_assimilation.h:77:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tleaf"), std::allocator<char>()))'
   77 |           Tleaf{get_input(input_quantities, "Tleaf")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& Tambient;
      |                   ^~~~~~~~
module_library/c4_assimilation.h:78:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   78 |           Tambient{get_input(input_quantities, "temp")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& rh;
      |                   ^~
module_library/c4_assimilation.h:79:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   79 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& vmax;
      |                   ^~~~
module_library/c4_assimilation.h:80:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax"), std::allocator<char>()))'
   80 |           vmax{get_input(input_quantities, "vmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& alpha;
      |                   ^~~~~
module_library/c4_assimilation.h:81:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alpha"), std::allocator<char>()))'
   81 |           alpha{get_input(input_quantities, "alpha")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& kparm;
      |                   ^~~~~
module_library/c4_assimilation.h:82:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kparm"), std::allocator<char>()))'
   82 |           kparm{get_input(input_quantities, "kparm")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& theta;
      |                   ^~~~~
module_library/c4_assimilation.h:83:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta"), std::allocator<char>()))'
   83 |           theta{get_input(input_quantities, "theta")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& beta;
      |                   ^~~~
module_library/c4_assimilation.h:84:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"beta"), std::allocator<char>()))'
   84 |           beta{get_input(input_quantities, "beta")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& Rd;
      |                   ^~
module_library/c4_assimilation.h:85:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
   85 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:124:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  124 |     double const& b0;
      |                   ^~
module_library/c4_assimilation.h:86:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   86 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:125:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  125 |     double const& b1;
      |                   ^~
module_library/c4_assimilation.h:87:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   87 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:126:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  126 |     double const& Gs_min;
      |                   ^~~~~~
module_library/c4_assimilation.h:88:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs_min"), std::allocator<char>()))'
   88 |           Gs_min{get_input(input_quantities, "Gs_min")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:127:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  127 |     double const& StomataWS;
      |                   ^~~~~~~~~
module_library/c4_assimilation.h:89:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"StomataWS"), std::allocator<char>()))'
   89 |           StomataWS{get_input(input_quantities, "StomataWS")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:128:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  128 |     double const& Catm;
      |                   ^~~~
module_library/c4_assimilation.h:90:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   90 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:129:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  129 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:91:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   91 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:130:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  130 |     double const& upperT;
      |                   ^~~~~~
module_library/c4_assimilation.h:92:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"upperT"), std::allocator<char>()))'
   92 |           upperT{get_input(input_quantities, "upperT")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:131:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  131 |     double const& lowerT;
      |                   ^~~~~~
module_library/c4_assimilation.h:93:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lowerT"), std::allocator<char>()))'
   93 |           lowerT{get_input(input_quantities, "lowerT")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_assimilation.h:132:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  132 |     double const& gbw;
      |                   ^~~
module_library/c4_assimilation.h:94:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw"), std::allocator<char>()))'
   94 |           gbw{get_input(input_quantities, "gbw")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:21:
module_library/c4_canopy.h: In constructor 'standardBML::c4_canopy::c4_canopy(const state_map&, state_map*)':
module_library/c4_canopy.h:82:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   82 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:19:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
   19 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:83:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   83 |     double const& alpha1;
      |                   ^~~~~~
module_library/c4_canopy.h:20:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alpha1"), std::allocator<char>()))'
   20 |           alpha1{get_input(input_quantities, "alpha1")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:84:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   84 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:21:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   21 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:85:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   85 |     double const& atmospheric_scattering;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:22:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_scattering"), std::allocator<char>()))'
   22 |           atmospheric_scattering{get_input(input_quantities, "atmospheric_scattering")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:86:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   86 |     double const& atmospheric_transmittance;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:23:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_transmittance"), std::allocator<char>()))'
   23 |           atmospheric_transmittance{get_input(input_quantities, "atmospheric_transmittance")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:87:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   87 |     double const& b0;
      |                   ^~
module_library/c4_canopy.h:24:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   24 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:88:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   88 |     double const& b1;
      |                   ^~
module_library/c4_canopy.h:25:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   25 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:89:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   89 |     double const& beta;
      |                   ^~~~
module_library/c4_canopy.h:26:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"beta"), std::allocator<char>()))'
   26 |           beta{get_input(input_quantities, "beta")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:90:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   90 |     double const& Catm;
      |                   ^~~~
module_library/c4_canopy.h:27:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   27 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:91:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   91 |     double const& chil;
      |                   ^~~~
module_library/c4_canopy.h:28:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"chil"), std::allocator<char>()))'
   28 |           chil{get_input(input_quantities, "chil")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:92:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   92 |     double const& cosine_zenith_angle;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:29:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cosine_zenith_angle"), std::allocator<char>()))'
   29 |           cosine_zenith_angle{get_input(input_quantities, "cosine_zenith_angle")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:93:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   93 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/c4_canopy.h:30:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
   30 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:94:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   94 |     double const& Gs_min;
      |                   ^~~~~~
module_library/c4_canopy.h:31:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs_min"), std::allocator<char>()))'
   31 |           Gs_min{get_input(input_quantities, "Gs_min")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:95:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   95 |     double const& kparm;
      |                   ^~~~~
module_library/c4_canopy.h:32:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kparm"), std::allocator<char>()))'
   32 |           kparm{get_input(input_quantities, "kparm")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:96:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   96 |     double const& kpLN;
      |                   ^~~~
module_library/c4_canopy.h:33:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kpLN"), std::allocator<char>()))'
   33 |           kpLN{get_input(input_quantities, "kpLN")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     double const& k_diffuse;
      |                   ^~~~~~~~~
module_library/c4_canopy.h:34:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"k_diffuse"), std::allocator<char>()))'
   34 |           k_diffuse{get_input(input_quantities, "k_diffuse")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     double const& lai;
      |                   ^~~
module_library/c4_canopy.h:35:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   35 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     double const& LeafN;
      |                   ^~~~~
module_library/c4_canopy.h:36:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafN"), std::allocator<char>()))'
   36 |           LeafN{get_input(input_quantities, "LeafN")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/c4_canopy.h:37:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
   37 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     double const& leaf_reflectance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:38:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_nir"), std::allocator<char>()))'
   38 |           leaf_reflectance_nir{get_input(input_quantities, "leaf_reflectance_nir")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:102:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  102 |     double const& leaf_reflectance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:39:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_par"), std::allocator<char>()))'
   39 |           leaf_reflectance_par{get_input(input_quantities, "leaf_reflectance_par")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:103:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  103 |     double const& leaf_transmittance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:40:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_nir"), std::allocator<char>()))'
   40 |           leaf_transmittance_nir{get_input(input_quantities, "leaf_transmittance_nir")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:104:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  104 |     double const& leaf_transmittance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:41:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_par"), std::allocator<char>()))'
   41 |           leaf_transmittance_par{get_input(input_quantities, "leaf_transmittance_par")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:105:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  105 |     double const& lnfun;
      |                   ^~~~~
module_library/c4_canopy.h:42:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnfun"), std::allocator<char>()))'
   42 |           lnfun{get_input(input_quantities, "lnfun")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     double const& lowerT;
      |                   ^~~~~~
module_library/c4_canopy.h:43:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lowerT"), std::allocator<char>()))'
   43 |           lowerT{get_input(input_quantities, "lowerT")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& nalphab0;
      |                   ^~~~~~~~
module_library/c4_canopy.h:44:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nalphab0"), std::allocator<char>()))'
   44 |           nalphab0{get_input(input_quantities, "nalphab0")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& nalphab1;
      |                   ^~~~~~~~
module_library/c4_canopy.h:45:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nalphab1"), std::allocator<char>()))'
   45 |           nalphab1{get_input(input_quantities, "nalphab1")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& nileafn;
      |                   ^~~~~~~
module_library/c4_canopy.h:46:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nileafn"), std::allocator<char>()))'
   46 |           nileafn{get_input(input_quantities, "nileafn")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& nkln;
      |                   ^~~~
module_library/c4_canopy.h:47:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nkln"), std::allocator<char>()))'
   47 |           nkln{get_input(input_quantities, "nkln")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& nkpLN;
      |                   ^~~~~
module_library/c4_canopy.h:48:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nkpLN"), std::allocator<char>()))'
   48 |           nkpLN{get_input(input_quantities, "nkpLN")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& nlayers;
      |                   ^~~~~~~
module_library/c4_canopy.h:49:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nlayers"), std::allocator<char>()))'
   49 |           nlayers{get_input(input_quantities, "nlayers")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& nlnb0;
      |                   ^~~~~
module_library/c4_canopy.h:50:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nlnb0"), std::allocator<char>()))'
   50 |           nlnb0{get_input(input_quantities, "nlnb0")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& nlnb1;
      |                   ^~~~~
module_library/c4_canopy.h:51:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nlnb1"), std::allocator<char>()))'
   51 |           nlnb1{get_input(input_quantities, "nlnb1")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& nRdb0;
      |                   ^~~~~
module_library/c4_canopy.h:52:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nRdb0"), std::allocator<char>()))'
   52 |           nRdb0{get_input(input_quantities, "nRdb0")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& nRdb1;
      |                   ^~~~~
module_library/c4_canopy.h:53:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nRdb1"), std::allocator<char>()))'
   53 |           nRdb1{get_input(input_quantities, "nRdb1")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& nvmaxb0;
      |                   ^~~~~~~
module_library/c4_canopy.h:54:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nvmaxb0"), std::allocator<char>()))'
   54 |           nvmaxb0{get_input(input_quantities, "nvmaxb0")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& nvmaxb1;
      |                   ^~~~~~~
module_library/c4_canopy.h:55:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"nvmaxb1"), std::allocator<char>()))'
   55 |           nvmaxb1{get_input(input_quantities, "nvmaxb1")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& par_energy_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:56:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_content"), std::allocator<char>()))'
   56 |           par_energy_content{get_input(input_quantities, "par_energy_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& par_energy_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:57:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_fraction"), std::allocator<char>()))'
   57 |           par_energy_fraction{get_input(input_quantities, "par_energy_fraction")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& Rd;
      |                   ^~
module_library/c4_canopy.h:58:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
   58 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& rh;
      |                   ^~
module_library/c4_canopy.h:59:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   59 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& solar;
      |                   ^~~~~
module_library/c4_canopy.h:60:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"solar"), std::allocator<char>()))'
   60 |           solar{get_input(input_quantities, "solar")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:124:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  124 |     double const& StomataWS;
      |                   ^~~~~~~~~
module_library/c4_canopy.h:61:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"StomataWS"), std::allocator<char>()))'
   61 |           StomataWS{get_input(input_quantities, "StomataWS")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:125:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  125 |     double const& temp;
      |                   ^~~~
module_library/c4_canopy.h:62:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   62 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:126:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  126 |     double const& theta;
      |                   ^~~~~
module_library/c4_canopy.h:63:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta"), std::allocator<char>()))'
   63 |           theta{get_input(input_quantities, "theta")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:127:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  127 |     double const& upperT;
      |                   ^~~~~~
module_library/c4_canopy.h:64:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"upperT"), std::allocator<char>()))'
   64 |           upperT{get_input(input_quantities, "upperT")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:128:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  128 |     double const& vmax1;
      |                   ^~~~~
module_library/c4_canopy.h:65:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax1"), std::allocator<char>()))'
   65 |           vmax1{get_input(input_quantities, "vmax1")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_canopy.h:129:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  129 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/c4_canopy.h:66:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   66 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:22:
module_library/c4_leaf_photosynthesis.h: In constructor 'standardBML::c4_leaf_photosynthesis::c4_leaf_photosynthesis(const state_map&, state_map*)':
module_library/c4_leaf_photosynthesis.h:69:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   69 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:24:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
   24 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:70:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   70 |     double const& absorbed_shortwave;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:25:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_shortwave"), std::allocator<char>()))'
   25 |           absorbed_shortwave{get_input(input_quantities, "absorbed_shortwave")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:71:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   71 |     double const& alpha1;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:26:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alpha1"), std::allocator<char>()))'
   26 |           alpha1{get_input(input_quantities, "alpha1")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:72:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   72 |     double const& ambient_temperature;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:27:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   27 |           ambient_temperature{get_input(input_quantities, "temp")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:73:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   73 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:28:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   28 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:74:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   74 |     double const& b0;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:29:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   29 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:75:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   75 |     double const& b1;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:30:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   30 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:76:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   76 |     double const& beta;
      |                   ^~~~
module_library/c4_leaf_photosynthesis.h:31:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"beta"), std::allocator<char>()))'
   31 |           beta{get_input(input_quantities, "beta")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:77:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   77 |     double const& Catm;
      |                   ^~~~
module_library/c4_leaf_photosynthesis.h:32:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   32 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:78:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   78 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:33:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
   33 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:79:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   79 |     double const& Gs_min;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:34:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs_min"), std::allocator<char>()))'
   34 |           Gs_min{get_input(input_quantities, "Gs_min")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:80:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   80 |     double const& incident_ppfd;
      |                   ^~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:35:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"incident_ppfd"), std::allocator<char>()))'
   35 |           incident_ppfd{get_input(input_quantities, "incident_ppfd")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:81:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   81 |     double const& kparm;
      |                   ^~~~~
module_library/c4_leaf_photosynthesis.h:36:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kparm"), std::allocator<char>()))'
   36 |           kparm{get_input(input_quantities, "kparm")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:82:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   82 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/c4_leaf_photosynthesis.h:37:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
   37 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:83:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   83 |     double const& lowerT;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:38:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lowerT"), std::allocator<char>()))'
   38 |           lowerT{get_input(input_quantities, "lowerT")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:84:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   84 |     double const& Rd;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:39:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
   39 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:85:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   85 |     double const& rh;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:40:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   40 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:86:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   86 |     double const& StomataWS;
      |                   ^~~~~~~~~
module_library/c4_leaf_photosynthesis.h:41:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"StomataWS"), std::allocator<char>()))'
   41 |           StomataWS{get_input(input_quantities, "StomataWS")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:87:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   87 |     double const& theta;
      |                   ^~~~~
module_library/c4_leaf_photosynthesis.h:42:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta"), std::allocator<char>()))'
   42 |           theta{get_input(input_quantities, "theta")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:88:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   88 |     double const& upperT;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:43:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"upperT"), std::allocator<char>()))'
   43 |           upperT{get_input(input_quantities, "upperT")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:89:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   89 |     double const& vmax1;
      |                   ^~~~~
module_library/c4_leaf_photosynthesis.h:44:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax1"), std::allocator<char>()))'
   44 |           vmax1{get_input(input_quantities, "vmax1")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:90:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   90 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/c4_leaf_photosynthesis.h:45:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   45 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:23:
module_library/carbon_assimilation_to_biomass.h: In constructor 'standardBML::carbon_assimilation_to_biomass::carbon_assimilation_to_biomass(const state_map&, state_map*)':
module_library/carbon_assimilation_to_biomass.h:153:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  153 |     double const& canopy_assimilation_rate_CO2;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/carbon_assimilation_to_biomass.h:136:49: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"canopy_assimilation_rate_CO2"), std::allocator<char>()))'
  136 |           canopy_assimilation_rate_CO2{get_input(input_quantities, "canopy_assimilation_rate_CO2")},
      |                                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/carbon_assimilation_to_biomass.h:154:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  154 |     double const& GrossAssim_CO2;
      |                   ^~~~~~~~~~~~~~
module_library/carbon_assimilation_to_biomass.h:137:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"GrossAssim_CO2"), std::allocator<char>()))'
  137 |           GrossAssim_CO2{get_input(input_quantities, "GrossAssim_CO2")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/carbon_assimilation_to_biomass.h:155:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  155 |     double const& canopy_photorespiration_rate_CO2;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/carbon_assimilation_to_biomass.h:138:53: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"canopy_photorespiration_rate_CO2"), std::allocator<char>()))'
  138 |           canopy_photorespiration_rate_CO2{get_input(input_quantities, "canopy_photorespiration_rate_CO2")},
      |                                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/carbon_assimilation_to_biomass.h:156:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  156 |     double const& dry_biomass_per_carbon;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/carbon_assimilation_to_biomass.h:139:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"dry_biomass_per_carbon"), std::allocator<char>()))'
  139 |           dry_biomass_per_carbon{get_input(input_quantities, "dry_biomass_per_carbon")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:24:
module_library/canopy_gbw_thornley.h: In constructor 'standardBML::canopy_gbw_thornley::canopy_gbw_thornley(const state_map&, state_map*)':
module_library/canopy_gbw_thornley.h:40:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   40 |     double const& canopy_height;
      |                   ^~~~~~~~~~~~~
module_library/canopy_gbw_thornley.h:25:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"canopy_height"), std::allocator<char>()))'
   25 |           canopy_height{get_input(input_quantities, "canopy_height")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/canopy_gbw_thornley.h:41:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   41 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/canopy_gbw_thornley.h:26:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   26 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/canopy_gbw_thornley.h:42:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   42 |     double const& min_gbw_canopy;
      |                   ^~~~~~~~~~~~~~
module_library/canopy_gbw_thornley.h:27:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"min_gbw_canopy"), std::allocator<char>()))'
   27 |           min_gbw_canopy{get_input(input_quantities, "min_gbw_canopy")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/canopy_gbw_thornley.h:43:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   43 |     double const& windspeed_height;
      |                   ^~~~~~~~~~~~~~~~
module_library/canopy_gbw_thornley.h:28:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed_height"), std::allocator<char>()))'
   28 |           windspeed_height{get_input(input_quantities, "windspeed_height")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:25:
module_library/development_index.h: In constructor 'standardBML::development_index::development_index(const state_map&, state_map*)':
module_library/development_index.h:78:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   78 |     const double& development_rate_per_hour;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/development_index.h:64:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"development_rate_per_hour"), std::allocator<char>()))'
   64 |           development_rate_per_hour{get_input(input_quantities, "development_rate_per_hour")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:26:
module_library/development_index_from_thermal_time.h: In constructor 'standardBML::development_index_from_thermal_time::development_index_from_thermal_time(const state_map&, state_map*)':
module_library/development_index_from_thermal_time.h:65:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   65 |     double const& TTc;
      |                   ^~~
module_library/development_index_from_thermal_time.h:49:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTc"), std::allocator<char>()))'
   49 |           TTc{get_input(input_quantities, "TTc")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/development_index_from_thermal_time.h:66:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   66 |     double const& TTemr;
      |                   ^~~~~
module_library/development_index_from_thermal_time.h:50:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTemr"), std::allocator<char>()))'
   50 |           TTemr{get_input(input_quantities, "TTemr")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/development_index_from_thermal_time.h:67:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   67 |     double const& TTveg;
      |                   ^~~~~
module_library/development_index_from_thermal_time.h:51:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTveg"), std::allocator<char>()))'
   51 |           TTveg{get_input(input_quantities, "TTveg")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/development_index_from_thermal_time.h:68:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   68 |     double const& TTrep;
      |                   ^~~~~
module_library/development_index_from_thermal_time.h:52:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTrep"), std::allocator<char>()))'
   52 |           TTrep{get_input(input_quantities, "TTrep")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:27:
module_library/example_model_mass_gain.h: In constructor 'standardBML::example_model_mass_gain::example_model_mass_gain(const state_map&, state_map*)':
module_library/example_model_mass_gain.h:67:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   67 |     double const& Q;
      |                   ^
module_library/example_model_mass_gain.h:51:22: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Q"), std::allocator<char>()))'
   51 |           Q{get_input(input_quantities, "Q")},
      |             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
module_library/example_model_mass_gain.h:68:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   68 |     double const& alpha_rue;
      |                   ^~~~~~~~~
module_library/example_model_mass_gain.h:52:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alpha_rue"), std::allocator<char>()))'
   52 |           alpha_rue{get_input(input_quantities, "alpha_rue")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/example_model_mass_gain.h:69:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   69 |     double const& SLA;
      |                   ^~~
module_library/example_model_mass_gain.h:53:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"SLA"), std::allocator<char>()))'
   53 |           SLA{get_input(input_quantities, "SLA")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/example_model_mass_gain.h:70:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   70 |     double const& C_conv;
      |                   ^~~~~~
module_library/example_model_mass_gain.h:54:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"C_conv"), std::allocator<char>()))'
   54 |           C_conv{get_input(input_quantities, "C_conv")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/example_model_mass_gain.h:71:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   71 |     double const& Leaf;
      |                   ^~~~
module_library/example_model_mass_gain.h:55:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Leaf"), std::allocator<char>()))'
   55 |           Leaf{get_input(input_quantities, "Leaf")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:28:
module_library/example_model_partitioning.h: In constructor 'standardBML::example_model_partitioning::example_model_partitioning(const state_map&, state_map*)':
module_library/example_model_partitioning.h:57:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   57 |     double const& mass_gain;
      |                   ^~~~~~~~~
module_library/example_model_partitioning.h:42:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mass_gain"), std::allocator<char>()))'
   42 |           mass_gain{get_input(input_quantities, "mass_gain")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/example_model_partitioning.h:58:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   58 |     double const& f_leaf;
      |                   ^~~~~~
module_library/example_model_partitioning.h:43:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"f_leaf"), std::allocator<char>()))'
   43 |           f_leaf{get_input(input_quantities, "f_leaf")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/example_model_partitioning.h:59:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   59 |     double const& f_root;
      |                   ^~~~~~
module_library/example_model_partitioning.h:44:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"f_root"), std::allocator<char>()))'
   44 |           f_root{get_input(input_quantities, "f_root")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:29:
module_library/format_time.h: In constructor 'standardBML::format_time::format_time(const state_map&, state_map*)':
module_library/format_time.h:39:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   39 |     double const& time;
      |                   ^~~~
module_library/format_time.h:25:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"time"), std::allocator<char>()))'
   25 |           time{get_input(input_quantities, "time")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:30:
module_library/FvCB.h: In constructor 'standardBML::FvCB::FvCB(const state_map&, state_map*)':
module_library/FvCB.h:53:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   53 |     double const& Ci;
      |                   ^~
module_library/FvCB.h:23:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ci"), std::allocator<char>()))'
   23 |           Ci{get_input(input_quantities, "Ci")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:54:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   54 |     double const& Gstar;
      |                   ^~~~~
module_library/FvCB.h:24:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar"), std::allocator<char>()))'
   24 |           Gstar{get_input(input_quantities, "Gstar")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:55:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   55 |     double const& J;
      |                   ^
module_library/FvCB.h:25:22: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"J"), std::allocator<char>()))'
   25 |           J{get_input(input_quantities, "J")},
      |             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:56:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   56 |     double const& Kc;
      |                   ^~
module_library/FvCB.h:26:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc"), std::allocator<char>()))'
   26 |           Kc{get_input(input_quantities, "Kc")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:57:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   57 |     double const& Ko;
      |                   ^~
module_library/FvCB.h:27:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko"), std::allocator<char>()))'
   27 |           Ko{get_input(input_quantities, "Ko")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:58:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   58 |     double const& Oi;
      |                   ^~
module_library/FvCB.h:28:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Oi"), std::allocator<char>()))'
   28 |           Oi{get_input(input_quantities, "Oi")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:59:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   59 |     double const& Rd;
      |                   ^~
module_library/FvCB.h:29:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
   29 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:60:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   60 |     double const& TPU;
      |                   ^~~
module_library/FvCB.h:30:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TPU"), std::allocator<char>()))'
   30 |           TPU{get_input(input_quantities, "TPU")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:61:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   61 |     double const& Vcmax;
      |                   ^~~~~
module_library/FvCB.h:31:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax"), std::allocator<char>()))'
   31 |           Vcmax{get_input(input_quantities, "Vcmax")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:62:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   62 |     double const& alpha_TPU;
      |                   ^~~~~~~~~
module_library/FvCB.h:32:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alpha_TPU"), std::allocator<char>()))'
   32 |           alpha_TPU{get_input(input_quantities, "alpha_TPU")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:63:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   63 |     double const& electrons_per_carboxylation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:33:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_carboxylation"), std::allocator<char>()))'
   33 |           electrons_per_carboxylation{get_input(input_quantities, "electrons_per_carboxylation")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:64:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   64 |     double const& electrons_per_oxygenation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/FvCB.h:34:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_oxygenation"), std::allocator<char>()))'
   34 |           electrons_per_oxygenation{get_input(input_quantities, "electrons_per_oxygenation")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:31:
module_library/grimm_soybean_flowering.h: In constructor 'standardBML::grimm_soybean_flowering::grimm_soybean_flowering(const state_map&, state_map*)':
module_library/grimm_soybean_flowering.h:38:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   38 |     double const& grimm_rate;
      |                   ^~~~~~~~~~
module_library/grimm_soybean_flowering.h:26:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_rate"), std::allocator<char>()))'
   26 |           grimm_rate{get_input(input_quantities, "grimm_rate")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:32:
module_library/grimm_soybean_flowering_calculator.h: In constructor 'standardBML::grimm_soybean_flowering_calculator::grimm_soybean_flowering_calculator(const state_map&, state_map*)':
module_library/grimm_soybean_flowering_calculator.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     double const& sowing_fractional_doy;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:69:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"sowing_fractional_doy"), std::allocator<char>()))'
   69 |           sowing_fractional_doy{get_input(input_quantities, "sowing_fractional_doy")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     double const& grimm_physiological_age;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:70:44: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_physiological_age"), std::allocator<char>()))'
   70 |           grimm_physiological_age{get_input(input_quantities, "grimm_physiological_age")},
      |                                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     double const& grimm_juvenile_T0;
      |                   ^~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:71:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_juvenile_T0"), std::allocator<char>()))'
   71 |           grimm_juvenile_T0{get_input(input_quantities, "grimm_juvenile_T0")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     double const& grimm_juvenile_T1;
      |                   ^~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:72:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_juvenile_T1"), std::allocator<char>()))'
   72 |           grimm_juvenile_T1{get_input(input_quantities, "grimm_juvenile_T1")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:102:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  102 |     double const& grimm_juvenile_T2;
      |                   ^~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:73:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_juvenile_T2"), std::allocator<char>()))'
   73 |           grimm_juvenile_T2{get_input(input_quantities, "grimm_juvenile_T2")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:103:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  103 |     double const& grimm_juvenile_T3;
      |                   ^~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:74:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_juvenile_T3"), std::allocator<char>()))'
   74 |           grimm_juvenile_T3{get_input(input_quantities, "grimm_juvenile_T3")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:104:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  104 |     double const& grimm_juvenile_pd_threshold;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:75:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_juvenile_pd_threshold"), std::allocator<char>()))'
   75 |           grimm_juvenile_pd_threshold{get_input(input_quantities, "grimm_juvenile_pd_threshold")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:105:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  105 |     double const& grimm_T_min;
      |                   ^~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:76:32: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_T_min"), std::allocator<char>()))'
   76 |           grimm_T_min{get_input(input_quantities, "grimm_T_min")},
      |                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     double const& grimm_T_opt;
      |                   ^~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:77:32: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_T_opt"), std::allocator<char>()))'
   77 |           grimm_T_opt{get_input(input_quantities, "grimm_T_opt")},
      |                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& grimm_N_min;
      |                   ^~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:78:32: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_N_min"), std::allocator<char>()))'
   78 |           grimm_N_min{get_input(input_quantities, "grimm_N_min")},
      |                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& grimm_N_opt;
      |                   ^~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:79:32: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_N_opt"), std::allocator<char>()))'
   79 |           grimm_N_opt{get_input(input_quantities, "grimm_N_opt")},
      |                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& grimm_flowering_threshold;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:80:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grimm_flowering_threshold"), std::allocator<char>()))'
   80 |           grimm_flowering_threshold{get_input(input_quantities, "grimm_flowering_threshold")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& fractional_doy;
      |                   ^~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:81:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"fractional_doy"), std::allocator<char>()))'
   81 |           fractional_doy{get_input(input_quantities, "fractional_doy")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& temp;
      |                   ^~~~
module_library/grimm_soybean_flowering_calculator.h:82:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   82 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& day_length;
      |                   ^~~~~~~~~~
module_library/grimm_soybean_flowering_calculator.h:83:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"day_length"), std::allocator<char>()))'
   83 |           day_length{get_input(input_quantities, "day_length")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:33:
module_library/harmonic_oscillator.h: In constructor 'standardBML::harmonic_oscillator::harmonic_oscillator(const state_map&, state_map*)':
module_library/harmonic_oscillator.h:35:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   35 |     double const& mass;
      |                   ^~~~
module_library/harmonic_oscillator.h:19:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mass"), std::allocator<char>()))'
   19 |           mass{get_input(input_quantities, "mass")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/harmonic_oscillator.h:36:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   36 |     double const& spring_constant;
      |                   ^~~~~~~~~~~~~~~
module_library/harmonic_oscillator.h:20:36: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"spring_constant"), std::allocator<char>()))'
   20 |           spring_constant{get_input(input_quantities, "spring_constant")},
      |                           ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/harmonic_oscillator.h:37:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   37 |     double const& position;
      |                   ^~~~~~~~
module_library/harmonic_oscillator.h:21:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"position"), std::allocator<char>()))'
   21 |           position{get_input(input_quantities, "position")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/harmonic_oscillator.h:38:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   38 |     double const& velocity;
      |                   ^~~~~~~~
module_library/harmonic_oscillator.h:22:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"velocity"), std::allocator<char>()))'
   22 |           velocity{get_input(input_quantities, "velocity")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/harmonic_oscillator.h: In constructor 'standardBML::harmonic_energy::harmonic_energy(const state_map&, state_map*)':
module_library/harmonic_oscillator.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     double const& mass;
      |                   ^~~~
module_library/harmonic_oscillator.h:81:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mass"), std::allocator<char>()))'
   81 |           mass{get_input(input_quantities, "mass")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/harmonic_oscillator.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     double const& spring_constant;
      |                   ^~~~~~~~~~~~~~~
module_library/harmonic_oscillator.h:82:36: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"spring_constant"), std::allocator<char>()))'
   82 |           spring_constant{get_input(input_quantities, "spring_constant")},
      |                           ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/harmonic_oscillator.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     double const& position;
      |                   ^~~~~~~~
module_library/harmonic_oscillator.h:83:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"position"), std::allocator<char>()))'
   83 |           position{get_input(input_quantities, "position")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/harmonic_oscillator.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     double const& velocity;
      |                   ^~~~~~~~
module_library/harmonic_oscillator.h:84:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"velocity"), std::allocator<char>()))'
   84 |           velocity{get_input(input_quantities, "velocity")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:34:
module_library/height_from_lai.h: In constructor 'standardBML::height_from_lai::height_from_lai(const state_map&, state_map*)':
module_library/height_from_lai.h:49:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   49 |     double const& heightf;
      |                   ^~~~~~~
module_library/height_from_lai.h:36:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"heightf"), std::allocator<char>()))'
   36 |           heightf{get_input(input_quantities, "heightf")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/height_from_lai.h:50:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   50 |     double const& lai;
      |                   ^~~
module_library/height_from_lai.h:37:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   37 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:36:
module_library/incident_shortwave_from_ground_par.h: In constructor 'standardBML::incident_shortwave_from_ground_par::incident_shortwave_from_ground_par(const state_map&, state_map*)':
module_library/incident_shortwave_from_ground_par.h:55:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   55 |     double const& solar;
      |                   ^~~~~
module_library/incident_shortwave_from_ground_par.h:36:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"solar"), std::allocator<char>()))'
   36 |           solar{get_input(input_quantities, "solar")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/incident_shortwave_from_ground_par.h:56:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   56 |     double const& irradiance_direct_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/incident_shortwave_from_ground_par.h:37:47: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"irradiance_direct_fraction"), std::allocator<char>()))'
   37 |           irradiance_direct_fraction{get_input(input_quantities, "irradiance_direct_fraction")},
      |                                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/incident_shortwave_from_ground_par.h:57:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   57 |     double const& irradiance_diffuse_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/incident_shortwave_from_ground_par.h:38:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"irradiance_diffuse_fraction"), std::allocator<char>()))'
   38 |           irradiance_diffuse_fraction{get_input(input_quantities, "irradiance_diffuse_fraction")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/incident_shortwave_from_ground_par.h:58:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   58 |     double const& par_energy_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/incident_shortwave_from_ground_par.h:39:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_fraction"), std::allocator<char>()))'
   39 |           par_energy_fraction{get_input(input_quantities, "par_energy_fraction")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/incident_shortwave_from_ground_par.h:59:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   59 |     double const& par_energy_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/incident_shortwave_from_ground_par.h:40:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_content"), std::allocator<char>()))'
   40 |           par_energy_content{get_input(input_quantities, "par_energy_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:37:
module_library/leaf_evapotranspiration.h: In constructor 'standardBML::leaf_evapotranspiration::leaf_evapotranspiration(const state_map&, state_map*)':
module_library/leaf_evapotranspiration.h:56:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   56 |     double const& absorbed_shortwave;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:23:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_shortwave"), std::allocator<char>()))'
   23 |           absorbed_shortwave{get_input(input_quantities, "absorbed_shortwave")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:57:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   57 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:24:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   24 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:58:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   58 |     double const& canopy_height;
      |                   ^~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:25:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"canopy_height"), std::allocator<char>()))'
   25 |           canopy_height{get_input(input_quantities, "canopy_height")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:59:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   59 |     double const& Gs;
      |                   ^~
module_library/leaf_evapotranspiration.h:26:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs"), std::allocator<char>()))'
   26 |           Gs{get_input(input_quantities, "Gs")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:60:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   60 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/leaf_evapotranspiration.h:27:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
   27 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:61:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   61 |     double const& min_gbw_canopy;
      |                   ^~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:28:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"min_gbw_canopy"), std::allocator<char>()))'
   28 |           min_gbw_canopy{get_input(input_quantities, "min_gbw_canopy")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:62:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   62 |     double const& rh;
      |                   ^~
module_library/leaf_evapotranspiration.h:29:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   29 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:63:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   63 |     double const& temp;
      |                   ^~~~
module_library/leaf_evapotranspiration.h:30:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   30 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:64:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   64 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/leaf_evapotranspiration.h:31:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   31 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:65:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   65 |     double const& wind_speed_height;
      |                   ^~~~~~~~~~~~~~~~~
module_library/leaf_evapotranspiration.h:32:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"wind_speed_height"), std::allocator<char>()))'
   32 |           wind_speed_height{get_input(input_quantities, "wind_speed_height")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:38:
module_library/leaf_gbw_nikolov.h: In constructor 'standardBML::leaf_gbw_nikolov::leaf_gbw_nikolov(const state_map&, state_map*)':
module_library/leaf_gbw_nikolov.h:44:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   44 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/leaf_gbw_nikolov.h:26:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   26 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_gbw_nikolov.h:45:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   45 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/leaf_gbw_nikolov.h:27:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
   27 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_gbw_nikolov.h:46:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   46 |     double const& air_temperature;
      |                   ^~~~~~~~~~~~~~~
module_library/leaf_gbw_nikolov.h:28:36: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   28 |           air_temperature{get_input(input_quantities, "temp")},
      |                           ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_gbw_nikolov.h:47:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   47 |     double const& leaf_temperature;
      |                   ^~~~~~~~~~~~~~~~
module_library/leaf_gbw_nikolov.h:29:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_temperature"), std::allocator<char>()))'
   29 |           leaf_temperature{get_input(input_quantities, "leaf_temperature")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_gbw_nikolov.h:48:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   48 |     double const& Gs;
      |                   ^~
module_library/leaf_gbw_nikolov.h:30:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs"), std::allocator<char>()))'
   30 |           Gs{get_input(input_quantities, "Gs")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_gbw_nikolov.h:49:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   49 |     double const& rh;
      |                   ^~
module_library/leaf_gbw_nikolov.h:31:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   31 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_gbw_nikolov.h:50:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   50 |     double const& air_pressure;
      |                   ^~~~~~~~~~~~
module_library/leaf_gbw_nikolov.h:32:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"air_pressure"), std::allocator<char>()))'
   32 |           air_pressure{get_input(input_quantities, "air_pressure")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:39:
module_library/leaf_shape_factor.h: In constructor 'standardBML::leaf_shape_factor::leaf_shape_factor(const state_map&, state_map*)':
module_library/leaf_shape_factor.h:58:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   58 |     double const& cosine_zenith_angle;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/leaf_shape_factor.h:45:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cosine_zenith_angle"), std::allocator<char>()))'
   45 |           cosine_zenith_angle{get_input(input_quantities, "cosine_zenith_angle")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/leaf_shape_factor.h:59:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   59 |     double const& chil;
      |                   ^~~~
module_library/leaf_shape_factor.h:46:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"chil"), std::allocator<char>()))'
   46 |           chil{get_input(input_quantities, "chil")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:43:
module_library/litter_cover.h: In constructor 'standardBML::litter_cover::litter_cover(const state_map&, state_map*)':
module_library/litter_cover.h:69:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   69 |     double const& LeafLitter;
      |                   ^~~~~~~~~~
module_library/litter_cover.h:56:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafLitter"), std::allocator<char>()))'
   56 |           LeafLitter{get_input(input_quantities, "LeafLitter")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/litter_cover.h:70:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   70 |     double const& km_leaf_litter;
      |                   ^~~~~~~~~~~~~~
module_library/litter_cover.h:57:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"km_leaf_litter"), std::allocator<char>()))'
   57 |           km_leaf_litter{get_input(input_quantities, "km_leaf_litter")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:45:
module_library/maintenance_respiration.h: In constructor 'standardBML::maintenance_respiration::maintenance_respiration(const state_map&, state_map*)':
module_library/maintenance_respiration.h:56:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   56 |     const double& Leaf;
      |                   ^~~~
module_library/maintenance_respiration.h:29:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Leaf"), std::allocator<char>()))'
   29 |           Leaf{get_input(input_quantities, "Leaf")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/maintenance_respiration.h:57:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   57 |     const double& Stem;
      |                   ^~~~
module_library/maintenance_respiration.h:30:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Stem"), std::allocator<char>()))'
   30 |           Stem{get_input(input_quantities, "Stem")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/maintenance_respiration.h:58:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   58 |     const double& Root;
      |                   ^~~~
module_library/maintenance_respiration.h:31:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Root"), std::allocator<char>()))'
   31 |           Root{get_input(input_quantities, "Root")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/maintenance_respiration.h:59:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   59 |     const double& Rhizome;
      |                   ^~~~~~~
module_library/maintenance_respiration.h:32:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rhizome"), std::allocator<char>()))'
   32 |           Rhizome{get_input(input_quantities, "Rhizome")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/maintenance_respiration.h:60:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   60 |     const double& Grain;
      |                   ^~~~~
module_library/maintenance_respiration.h:33:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Grain"), std::allocator<char>()))'
   33 |           Grain{get_input(input_quantities, "Grain")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/maintenance_respiration.h:61:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   61 |     const double& Shell;
      |                   ^~~~~
module_library/maintenance_respiration.h:34:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Shell"), std::allocator<char>()))'
   34 |           Shell{get_input(input_quantities, "Shell")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/maintenance_respiration.h:62:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   62 |     const double& temp;
      |                   ^~~~
module_library/maintenance_respiration.h:35:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   35 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/maintenance_respiration.h:63:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   63 |     const double& mrc_leaf;
      |                   ^~~~~~~~
module_library/maintenance_respiration.h:36:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mrc_leaf"), std::allocator<char>()))'
   36 |           mrc_leaf{get_input(input_quantities, "mrc_leaf")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/maintenance_respiration.h:64:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   64 |     const double& mrc_stem;
      |                   ^~~~~~~~
module_library/maintenance_respiration.h:37:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mrc_stem"), std::allocator<char>()))'
   37 |           mrc_stem{get_input(input_quantities, "mrc_stem")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/maintenance_respiration.h:65:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   65 |     const double& mrc_root;
      |                   ^~~~~~~~
module_library/maintenance_respiration.h:38:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mrc_root"), std::allocator<char>()))'
   38 |           mrc_root{get_input(input_quantities, "mrc_root")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/maintenance_respiration.h:66:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   66 |     const double& mrc_grain;
      |                   ^~~~~~~~~
module_library/maintenance_respiration.h:39:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mrc_grain"), std::allocator<char>()))'
   39 |           mrc_grain{get_input(input_quantities, "mrc_grain")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/multilayer_c3_canopy.h:6,
                 from module_library/module_library.cpp:47:
module_library/multilayer_canopy_properties.h: In constructor 'standardBML::multilayer_canopy_properties::multilayer_canopy_properties(const int&, const state_map&, state_map*)':
module_library/multilayer_canopy_properties.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& par_incident_direct;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:66:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_incident_direct"), std::allocator<char>()))'
   66 |           par_incident_direct{get_input(input_quantities, "par_incident_direct")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& par_incident_diffuse;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:67:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_incident_diffuse"), std::allocator<char>()))'
   67 |           par_incident_diffuse{get_input(input_quantities, "par_incident_diffuse")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& lai;
      |                   ^~~
module_library/multilayer_canopy_properties.h:68:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   68 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& cosine_zenith_angle;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:69:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cosine_zenith_angle"), std::allocator<char>()))'
   69 |           cosine_zenith_angle{get_input(input_quantities, "cosine_zenith_angle")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& k_diffuse;
      |                   ^~~~~~~~~
module_library/multilayer_canopy_properties.h:70:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"k_diffuse"), std::allocator<char>()))'
   70 |           k_diffuse{get_input(input_quantities, "k_diffuse")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& chil;
      |                   ^~~~
module_library/multilayer_canopy_properties.h:71:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"chil"), std::allocator<char>()))'
   71 |           chil{get_input(input_quantities, "chil")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& heightf;
      |                   ^~~~~~~
module_library/multilayer_canopy_properties.h:72:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"heightf"), std::allocator<char>()))'
   72 |           heightf{get_input(input_quantities, "heightf")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/multilayer_canopy_properties.h:73:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   73 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& LeafN;
      |                   ^~~~~
module_library/multilayer_canopy_properties.h:74:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafN"), std::allocator<char>()))'
   74 |           LeafN{get_input(input_quantities, "LeafN")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& kpLN;
      |                   ^~~~
module_library/multilayer_canopy_properties.h:75:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kpLN"), std::allocator<char>()))'
   75 |           kpLN{get_input(input_quantities, "kpLN")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& lnfun;
      |                   ^~~~~
module_library/multilayer_canopy_properties.h:76:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnfun"), std::allocator<char>()))'
   76 |           lnfun{get_input(input_quantities, "lnfun")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& par_energy_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:77:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_content"), std::allocator<char>()))'
   77 |           par_energy_content{get_input(input_quantities, "par_energy_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& par_energy_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:78:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_fraction"), std::allocator<char>()))'
   78 |           par_energy_fraction{get_input(input_quantities, "par_energy_fraction")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& leaf_transmittance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:79:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_nir"), std::allocator<char>()))'
   79 |           leaf_transmittance_nir{get_input(input_quantities, "leaf_transmittance_nir")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& leaf_transmittance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:80:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_par"), std::allocator<char>()))'
   80 |           leaf_transmittance_par{get_input(input_quantities, "leaf_transmittance_par")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& leaf_reflectance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:81:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_nir"), std::allocator<char>()))'
   81 |           leaf_reflectance_nir{get_input(input_quantities, "leaf_reflectance_nir")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& leaf_reflectance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:82:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_par"), std::allocator<char>()))'
   82 |           leaf_reflectance_par{get_input(input_quantities, "leaf_reflectance_par")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:49:
module_library/multilayer_canopy_integrator.h: In constructor 'standardBML::multilayer_canopy_integrator::multilayer_canopy_integrator(const int&, const state_map&, state_map*)':
module_library/multilayer_canopy_integrator.h:81:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   81 |     double const& lai;
      |                   ^~~
module_library/multilayer_canopy_integrator.h:50:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   50 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_integrator.h:82:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   82 |     double const& growth_respiration_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_integrator.h:51:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"growth_respiration_fraction"), std::allocator<char>()))'
   51 |           growth_respiration_fraction{get_input(input_quantities, "growth_respiration_fraction")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/multilayer_rue_canopy.h:7,
                 from module_library/module_library.cpp:51:
module_library/rue_leaf_photosynthesis.h: In constructor 'standardBML::rue_leaf_photosynthesis::rue_leaf_photosynthesis(const state_map&, state_map*)':
module_library/rue_leaf_photosynthesis.h:173:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  173 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:137:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
  137 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:174:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  174 |     double const& absorbed_shortwave;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:138:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_shortwave"), std::allocator<char>()))'
  138 |           absorbed_shortwave{get_input(input_quantities, "absorbed_shortwave")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:175:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  175 |     double const& alpha_rue;
      |                   ^~~~~~~~~
module_library/rue_leaf_photosynthesis.h:139:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alpha_rue"), std::allocator<char>()))'
  139 |           alpha_rue{get_input(input_quantities, "alpha_rue")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:176:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  176 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:140:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
  140 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:177:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  177 |     double const& b0;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:141:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
  141 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:178:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  178 |     double const& b1;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:142:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
  142 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:179:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  179 |     double const& Catm;
      |                   ^~~~
module_library/rue_leaf_photosynthesis.h:143:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
  143 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:180:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  180 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:144:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
  144 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:181:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  181 |     double const& height;
      |                   ^~~~~~
module_library/rue_leaf_photosynthesis.h:145:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"height"), std::allocator<char>()))'
  145 |           height{get_input(input_quantities, "height")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:182:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  182 |     double const& incident_ppfd;
      |                   ^~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:146:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"incident_ppfd"), std::allocator<char>()))'
  146 |           incident_ppfd{get_input(input_quantities, "incident_ppfd")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:183:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  183 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/rue_leaf_photosynthesis.h:147:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
  147 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:184:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  184 |     double const& Rd;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:148:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
  148 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:185:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  185 |     double const& rh;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:149:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
  149 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:186:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  186 |     double const& temp;
      |                   ^~~~
module_library/rue_leaf_photosynthesis.h:150:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
  150 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:187:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  187 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/rue_leaf_photosynthesis.h:151:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
  151 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:188:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  188 |     double const& windspeed_height;
      |                   ^~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:152:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed_height"), std::allocator<char>()))'
  152 |           windspeed_height{get_input(input_quantities, "windspeed_height")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:53:
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h: In constructor 'standardBML::no_leaf_resp_neg_assim_partitioning_growth_calculator::no_leaf_resp_neg_assim_partitioning_growth_calculator(const state_map&, state_map*)':
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:96:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   96 |     const double& kLeaf;
      |                   ^~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:69:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kLeaf"), std::allocator<char>()))'
   69 |           kLeaf{get_input(input_quantities, "kLeaf")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     const double& kStem;
      |                   ^~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:70:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kStem"), std::allocator<char>()))'
   70 |           kStem{get_input(input_quantities, "kStem")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     const double& kRoot;
      |                   ^~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:71:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRoot"), std::allocator<char>()))'
   71 |           kRoot{get_input(input_quantities, "kRoot")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     const double& kRhizome;
      |                   ^~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:72:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRhizome"), std::allocator<char>()))'
   72 |           kRhizome{get_input(input_quantities, "kRhizome")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     const double& kGrain;
      |                   ^~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:73:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kGrain"), std::allocator<char>()))'
   73 |           kGrain{get_input(input_quantities, "kGrain")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     const double& kShell;
      |                   ^~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:74:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kShell"), std::allocator<char>()))'
   74 |           kShell{get_input(input_quantities, "kShell")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:102:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  102 |     const double& canopy_assim;
      |                   ^~~~~~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:75:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"canopy_assimilation_rate"), std::allocator<char>()))'
   75 |           canopy_assim{get_input(input_quantities, "canopy_assimilation_rate")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:103:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  103 |     const double& grc_stem;
      |                   ^~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:76:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grc_stem"), std::allocator<char>()))'
   76 |           grc_stem{get_input(input_quantities, "grc_stem")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:104:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  104 |     const double& grc_root;
      |                   ^~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:77:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"grc_root"), std::allocator<char>()))'
   77 |           grc_root{get_input(input_quantities, "grc_root")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:105:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  105 |     const double& temp;
      |                   ^~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:78:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   78 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     const double& LeafWS;
      |                   ^~~~~~
module_library/no_leaf_resp_neg_assim_partitioning_growth_calculator.h:79:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafWS"), std::allocator<char>()))'
   79 |           LeafWS{get_input(input_quantities, "LeafWS")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:54:
module_library/no_leaf_resp_partitioning_growth_calculator.h: In constructor 'standardBML::no_leaf_resp_partitioning_growth_calculator::no_leaf_resp_partitioning_growth_calculator(const state_map&, state_map*)':
module_library/no_leaf_resp_partitioning_growth_calculator.h:92:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   92 |     const double& kLeaf;
      |                   ^~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:68:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kLeaf"), std::allocator<char>()))'
   68 |           kLeaf{get_input(input_quantities, "kLeaf")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:93:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   93 |     const double& kStem;
      |                   ^~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:69:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kStem"), std::allocator<char>()))'
   69 |           kStem{get_input(input_quantities, "kStem")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:94:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   94 |     const double& kRoot;
      |                   ^~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:70:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRoot"), std::allocator<char>()))'
   70 |           kRoot{get_input(input_quantities, "kRoot")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:95:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   95 |     const double& kRhizome;
      |                   ^~~~~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:71:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRhizome"), std::allocator<char>()))'
   71 |           kRhizome{get_input(input_quantities, "kRhizome")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:96:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   96 |     const double& kGrain;
      |                   ^~~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:72:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kGrain"), std::allocator<char>()))'
   72 |           kGrain{get_input(input_quantities, "kGrain")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     const double& canopy_assimilation_rate;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:73:45: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"canopy_assimilation_rate"), std::allocator<char>()))'
   73 |           canopy_assimilation_rate{get_input(input_quantities, "canopy_assimilation_rate")},
      |                                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     const double& mrc1;
      |                   ^~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:74:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mrc1"), std::allocator<char>()))'
   74 |           mrc1{get_input(input_quantities, "mrc1")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     const double& mrc2;
      |                   ^~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:75:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mrc2"), std::allocator<char>()))'
   75 |           mrc2{get_input(input_quantities, "mrc2")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     const double& temp;
      |                   ^~~~
module_library/no_leaf_resp_partitioning_growth_calculator.h:76:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   76 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:57:
module_library/one_layer_soil_profile_derivatives.h: In constructor 'standardBML::one_layer_soil_profile_derivatives::one_layer_soil_profile_derivatives(const state_map&, state_map*)':
module_library/one_layer_soil_profile_derivatives.h:44:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   44 |     double const& soil_water_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:20:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_water_content"), std::allocator<char>()))'
   20 |           soil_water_content{get_input(input_quantities, "soil_water_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:45:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   45 |     double const& soil_depth;
      |                   ^~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:21:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_depth"), std::allocator<char>()))'
   21 |           soil_depth{get_input(input_quantities, "soil_depth")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:46:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   46 |     double const& soil_field_capacity;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:22:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_field_capacity"), std::allocator<char>()))'
   22 |           soil_field_capacity{get_input(input_quantities, "soil_field_capacity")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:47:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   47 |     double const& soil_wilting_point;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:23:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_wilting_point"), std::allocator<char>()))'
   23 |           soil_wilting_point{get_input(input_quantities, "soil_wilting_point")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:48:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   48 |     double const& soil_saturated_conductivity;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:24:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_saturated_conductivity"), std::allocator<char>()))'
   24 |           soil_saturated_conductivity{get_input(input_quantities, "soil_saturated_conductivity")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:49:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   49 |     double const& soil_air_entry;
      |                   ^~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:25:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_air_entry"), std::allocator<char>()))'
   25 |           soil_air_entry{get_input(input_quantities, "soil_air_entry")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:50:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   50 |     double const& soil_b_coefficient;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:26:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_b_coefficient"), std::allocator<char>()))'
   26 |           soil_b_coefficient{get_input(input_quantities, "soil_b_coefficient")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:51:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   51 |     double const& acceleration_from_gravity;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:27:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"acceleration_from_gravity"), std::allocator<char>()))'
   27 |           acceleration_from_gravity{get_input(input_quantities, "acceleration_from_gravity")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:52:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   52 |     double const& precipitation_rate;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:28:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"precipitation_rate"), std::allocator<char>()))'
   28 |           precipitation_rate{get_input(input_quantities, "precipitation_rate")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:53:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   53 |     double const& soil_saturation_capacity;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:29:45: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_saturation_capacity"), std::allocator<char>()))'
   29 |           soil_saturation_capacity{get_input(input_quantities, "soil_saturation_capacity")},
      |                                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:54:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   54 |     double const& soil_sand_content;
      |                   ^~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:30:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_sand_content"), std::allocator<char>()))'
   30 |           soil_sand_content{get_input(input_quantities, "soil_sand_content")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:55:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   55 |     double const& evapotranspiration;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/one_layer_soil_profile_derivatives.h:31:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"evapotranspiration"), std::allocator<char>()))'
   31 |           evapotranspiration{get_input(input_quantities, "evapotranspiration")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:58:
module_library/oscillator_clock_calculator.h: In constructor 'standardBML::oscillator_clock_calculator::oscillator_clock_calculator(const state_map&, state_map*)':
module_library/oscillator_clock_calculator.h:53:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   53 |     double const& hour;
      |                   ^~~~
module_library/oscillator_clock_calculator.h:20:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"hour"), std::allocator<char>()))'
   20 |           hour{get_input(input_quantities, "hour")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:54:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   54 |     double const& kick_strength;
      |                   ^~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:21:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kick_strength"), std::allocator<char>()))'
   21 |           kick_strength{get_input(input_quantities, "kick_strength")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:55:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   55 |     double const& night_tracker;
      |                   ^~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:22:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"night_tracker"), std::allocator<char>()))'
   22 |           night_tracker{get_input(input_quantities, "night_tracker")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:56:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   56 |     double const& day_tracker;
      |                   ^~~~~~~~~~~
module_library/oscillator_clock_calculator.h:23:32: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"day_tracker"), std::allocator<char>()))'
   23 |           day_tracker{get_input(input_quantities, "day_tracker")},
      |                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:57:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   57 |     double const& light;
      |                   ^~~~~
module_library/oscillator_clock_calculator.h:24:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"light"), std::allocator<char>()))'
   24 |           light{get_input(input_quantities, "light")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:58:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   58 |     double const& dawn_b;
      |                   ^~~~~~
module_library/oscillator_clock_calculator.h:25:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"dawn_b"), std::allocator<char>()))'
   25 |           dawn_b{get_input(input_quantities, "dawn_b")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:59:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   59 |     double const& dawn_a;
      |                   ^~~~~~
module_library/oscillator_clock_calculator.h:26:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"dawn_a"), std::allocator<char>()))'
   26 |           dawn_a{get_input(input_quantities, "dawn_a")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:60:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   60 |     double const& dusk_b;
      |                   ^~~~~~
module_library/oscillator_clock_calculator.h:27:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"dusk_b"), std::allocator<char>()))'
   27 |           dusk_b{get_input(input_quantities, "dusk_b")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:61:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   61 |     double const& dusk_a;
      |                   ^~~~~~
module_library/oscillator_clock_calculator.h:28:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"dusk_a"), std::allocator<char>()))'
   28 |           dusk_a{get_input(input_quantities, "dusk_a")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:62:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   62 |     double const& ref_b;
      |                   ^~~~~
module_library/oscillator_clock_calculator.h:29:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"ref_b"), std::allocator<char>()))'
   29 |           ref_b{get_input(input_quantities, "ref_b")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/oscillator_clock_calculator.h:63:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   63 |     double const& ref_a;
      |                   ^~~~~
module_library/oscillator_clock_calculator.h:30:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"ref_a"), std::allocator<char>()))'
   30 |           ref_a{get_input(input_quantities, "ref_a")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:59:
module_library/parameter_calculator.h: In constructor 'standardBML::parameter_calculator::parameter_calculator(const state_map&, state_map*)':
module_library/parameter_calculator.h:37:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   37 |     double const& Sp;
      |                   ^~
module_library/parameter_calculator.h:16:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Sp"), std::allocator<char>()))'
   16 |           Sp{get_input(input_quantities, "Sp")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/parameter_calculator.h:38:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   38 |     double const& Leaf;
      |                   ^~~~
module_library/parameter_calculator.h:17:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Leaf"), std::allocator<char>()))'
   17 |           Leaf{get_input(input_quantities, "Leaf")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/parameter_calculator.h:39:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   39 |     double const& LeafN_0;
      |                   ^~~~~~~
module_library/parameter_calculator.h:18:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafN_0"), std::allocator<char>()))'
   18 |           LeafN_0{get_input(input_quantities, "LeafN_0")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/parameter_calculator.h:40:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   40 |     double const& LeafN;
      |                   ^~~~~
module_library/parameter_calculator.h:19:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafN"), std::allocator<char>()))'
   19 |           LeafN{get_input(input_quantities, "LeafN")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/parameter_calculator.h:41:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   41 |     double const& vmax_n_intercept;
      |                   ^~~~~~~~~~~~~~~~
module_library/parameter_calculator.h:20:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax_n_intercept"), std::allocator<char>()))'
   20 |           vmax_n_intercept{get_input(input_quantities, "vmax_n_intercept")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/parameter_calculator.h:42:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   42 |     double const& vmax1;
      |                   ^~~~~
module_library/parameter_calculator.h:21:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax1"), std::allocator<char>()))'
   21 |           vmax1{get_input(input_quantities, "vmax1")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/parameter_calculator.h:43:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   43 |     double const& alphab1;
      |                   ^~~~~~~
module_library/parameter_calculator.h:22:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alphab1"), std::allocator<char>()))'
   22 |           alphab1{get_input(input_quantities, "alphab1")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/parameter_calculator.h:44:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   44 |     double const& alpha1;
      |                   ^~~~~~
module_library/parameter_calculator.h:23:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alpha1"), std::allocator<char>()))'
   23 |           alpha1{get_input(input_quantities, "alpha1")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:60:
module_library/partitioning_coefficient_logistic.h: In constructor 'standardBML::partitioning_coefficient_logistic::partitioning_coefficient_logistic(const state_map&, state_map*)':
module_library/partitioning_coefficient_logistic.h:91:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   91 |     const double& DVI;
      |                   ^~~
module_library/partitioning_coefficient_logistic.h:65:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"DVI"), std::allocator<char>()))'
   65 |           DVI{get_input(input_quantities, "DVI")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_coefficient_logistic.h:92:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   92 |     const double& alphaRoot;
      |                   ^~~~~~~~~
module_library/partitioning_coefficient_logistic.h:66:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alphaRoot"), std::allocator<char>()))'
   66 |           alphaRoot{get_input(input_quantities, "alphaRoot")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_coefficient_logistic.h:93:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   93 |     const double& alphaStem;
      |                   ^~~~~~~~~
module_library/partitioning_coefficient_logistic.h:67:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alphaStem"), std::allocator<char>()))'
   67 |           alphaStem{get_input(input_quantities, "alphaStem")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_coefficient_logistic.h:94:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   94 |     const double& alphaLeaf;
      |                   ^~~~~~~~~
module_library/partitioning_coefficient_logistic.h:68:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alphaLeaf"), std::allocator<char>()))'
   68 |           alphaLeaf{get_input(input_quantities, "alphaLeaf")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_coefficient_logistic.h:95:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   95 |     const double& alphaShell;
      |                   ^~~~~~~~~~
module_library/partitioning_coefficient_logistic.h:69:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alphaShell"), std::allocator<char>()))'
   69 |           alphaShell{get_input(input_quantities, "alphaShell")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_coefficient_logistic.h:96:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   96 |     const double& betaRoot;
      |                   ^~~~~~~~
module_library/partitioning_coefficient_logistic.h:70:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"betaRoot"), std::allocator<char>()))'
   70 |           betaRoot{get_input(input_quantities, "betaRoot")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_coefficient_logistic.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     const double& betaStem;
      |                   ^~~~~~~~
module_library/partitioning_coefficient_logistic.h:71:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"betaStem"), std::allocator<char>()))'
   71 |           betaStem{get_input(input_quantities, "betaStem")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_coefficient_logistic.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     const double& betaLeaf;
      |                   ^~~~~~~~
module_library/partitioning_coefficient_logistic.h:72:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"betaLeaf"), std::allocator<char>()))'
   72 |           betaLeaf{get_input(input_quantities, "betaLeaf")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_coefficient_logistic.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     const double& betaShell;
      |                   ^~~~~~~~~
module_library/partitioning_coefficient_logistic.h:73:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"betaShell"), std::allocator<char>()))'
   73 |           betaShell{get_input(input_quantities, "betaShell")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_coefficient_logistic.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     const double& kRhizome_emr;
      |                   ^~~~~~~~~~~~
module_library/partitioning_coefficient_logistic.h:74:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRhizome_emr"), std::allocator<char>()))'
   74 |           kRhizome_emr{get_input(input_quantities, "kRhizome_emr")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:62:
module_library/partitioning_growth.h: In constructor 'standardBML::partitioning_growth::partitioning_growth(const state_map&, state_map*)':
module_library/partitioning_growth.h:105:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  105 |     const double& retrans;
      |                   ^~~~~~~
module_library/partitioning_growth.h:71:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"retrans"), std::allocator<char>()))'
   71 |           retrans{get_input(input_quantities, "retrans")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     const double& retrans_rhizome;
      |                   ^~~~~~~~~~~~~~~
module_library/partitioning_growth.h:72:36: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"retrans_rhizome"), std::allocator<char>()))'
   72 |           retrans_rhizome{get_input(input_quantities, "retrans_rhizome")},
      |                           ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     const double& kLeaf;
      |                   ^~~~~
module_library/partitioning_growth.h:73:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kLeaf"), std::allocator<char>()))'
   73 |           kLeaf{get_input(input_quantities, "kLeaf")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     const double& kStem;
      |                   ^~~~~
module_library/partitioning_growth.h:74:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kStem"), std::allocator<char>()))'
   74 |           kStem{get_input(input_quantities, "kStem")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     const double& kRoot;
      |                   ^~~~~
module_library/partitioning_growth.h:75:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRoot"), std::allocator<char>()))'
   75 |           kRoot{get_input(input_quantities, "kRoot")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     const double& kRhizome;
      |                   ^~~~~~~~
module_library/partitioning_growth.h:76:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRhizome"), std::allocator<char>()))'
   76 |           kRhizome{get_input(input_quantities, "kRhizome")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     const double& kGrain;
      |                   ^~~~~~
module_library/partitioning_growth.h:77:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kGrain"), std::allocator<char>()))'
   77 |           kGrain{get_input(input_quantities, "kGrain")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     const double& kShell;
      |                   ^~~~~~
module_library/partitioning_growth.h:78:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kShell"), std::allocator<char>()))'
   78 |           kShell{get_input(input_quantities, "kShell")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     const double& net_assimilation_rate_leaf;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:79:47: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_leaf"), std::allocator<char>()))'
   79 |           net_assimilation_rate_leaf{get_input(input_quantities, "net_assimilation_rate_leaf")},
      |                                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     const double& net_assimilation_rate_stem;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:80:47: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_stem"), std::allocator<char>()))'
   80 |           net_assimilation_rate_stem{get_input(input_quantities, "net_assimilation_rate_stem")},
      |                                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     const double& net_assimilation_rate_root;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:81:47: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_root"), std::allocator<char>()))'
   81 |           net_assimilation_rate_root{get_input(input_quantities, "net_assimilation_rate_root")},
      |                                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     const double& net_assimilation_rate_rhizome;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:82:50: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_rhizome"), std::allocator<char>()))'
   82 |           net_assimilation_rate_rhizome{get_input(input_quantities, "net_assimilation_rate_rhizome")},
      |                                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     const double& net_assimilation_rate_grain;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:83:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_grain"), std::allocator<char>()))'
   83 |           net_assimilation_rate_grain{get_input(input_quantities, "net_assimilation_rate_grain")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     const double& net_assimilation_rate_shell;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:84:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_shell"), std::allocator<char>()))'
   84 |           net_assimilation_rate_shell{get_input(input_quantities, "net_assimilation_rate_shell")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     const double& Leaf;
      |                   ^~~~
module_library/partitioning_growth.h:85:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Leaf"), std::allocator<char>()))'
   85 |           Leaf{get_input(input_quantities, "Leaf")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     const double& Stem;
      |                   ^~~~
module_library/partitioning_growth.h:86:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Stem"), std::allocator<char>()))'
   86 |           Stem{get_input(input_quantities, "Stem")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     const double& Root;
      |                   ^~~~
module_library/partitioning_growth.h:87:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Root"), std::allocator<char>()))'
   87 |           Root{get_input(input_quantities, "Root")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     const double& Rhizome;
      |                   ^~~~~~~
module_library/partitioning_growth.h:88:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rhizome"), std::allocator<char>()))'
   88 |           Rhizome{get_input(input_quantities, "Rhizome")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:63:
module_library/partitioning_growth_calculator.h: In constructor 'standardBML::partitioning_growth_calculator::partitioning_growth_calculator(const state_map&, state_map*)':
module_library/partitioning_growth_calculator.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     const double& kLeaf;
      |                   ^~~~~
module_library/partitioning_growth_calculator.h:74:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kLeaf"), std::allocator<char>()))'
   74 |           kLeaf{get_input(input_quantities, "kLeaf")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth_calculator.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     const double& kStem;
      |                   ^~~~~
module_library/partitioning_growth_calculator.h:75:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kStem"), std::allocator<char>()))'
   75 |           kStem{get_input(input_quantities, "kStem")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth_calculator.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     const double& kRoot;
      |                   ^~~~~
module_library/partitioning_growth_calculator.h:76:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRoot"), std::allocator<char>()))'
   76 |           kRoot{get_input(input_quantities, "kRoot")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth_calculator.h:102:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  102 |     const double& kRhizome;
      |                   ^~~~~~~~
module_library/partitioning_growth_calculator.h:77:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRhizome"), std::allocator<char>()))'
   77 |           kRhizome{get_input(input_quantities, "kRhizome")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth_calculator.h:103:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  103 |     const double& kGrain;
      |                   ^~~~~~
module_library/partitioning_growth_calculator.h:78:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kGrain"), std::allocator<char>()))'
   78 |           kGrain{get_input(input_quantities, "kGrain")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth_calculator.h:104:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  104 |     const double& canopy_assimilation_rate;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth_calculator.h:79:45: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"canopy_assimilation_rate"), std::allocator<char>()))'
   79 |           canopy_assimilation_rate{get_input(input_quantities, "canopy_assimilation_rate")},
      |                                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth_calculator.h:105:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  105 |     const double& LeafWS;
      |                   ^~~~~~
module_library/partitioning_growth_calculator.h:80:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafWS"), std::allocator<char>()))'
   80 |           LeafWS{get_input(input_quantities, "LeafWS")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth_calculator.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     const double& mrc1;
      |                   ^~~~
module_library/partitioning_growth_calculator.h:81:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mrc1"), std::allocator<char>()))'
   81 |           mrc1{get_input(input_quantities, "mrc1")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth_calculator.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     const double& mrc2;
      |                   ^~~~
module_library/partitioning_growth_calculator.h:82:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mrc2"), std::allocator<char>()))'
   82 |           mrc2{get_input(input_quantities, "mrc2")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/partitioning_growth_calculator.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     const double& temp;
      |                   ^~~~
module_library/partitioning_growth_calculator.h:83:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   83 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:64:
module_library/penman_monteith_leaf_temperature.h: In constructor 'standardBML::penman_monteith_leaf_temperature::penman_monteith_leaf_temperature(const state_map&, state_map*)':
module_library/penman_monteith_leaf_temperature.h:37:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   37 |     double const& slope_water_vapor;
      |                   ^~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:18:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"slope_water_vapor"), std::allocator<char>()))'
   18 |           slope_water_vapor{get_input(input_quantities, "slope_water_vapor")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:38:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   38 |     double const& psychrometric_parameter;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:19:44: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"psychrometric_parameter"), std::allocator<char>()))'
   19 |           psychrometric_parameter{get_input(input_quantities, "psychrometric_parameter")},
      |                                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:39:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   39 |     double const& latent_heat_vaporization_of_water;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:20:54: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"latent_heat_vaporization_of_water"), std::allocator<char>()))'
   20 |           latent_heat_vaporization_of_water{get_input(input_quantities, "latent_heat_vaporization_of_water")},
      |                                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:40:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   40 |     double const& leaf_boundary_layer_conductance;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:21:52: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_boundary_layer_conductance"), std::allocator<char>()))'
   21 |           leaf_boundary_layer_conductance{get_input(input_quantities, "leaf_boundary_layer_conductance")},
      |                                           ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:41:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   41 |     double const& leaf_stomatal_conductance;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:22:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_stomatal_conductance"), std::allocator<char>()))'
   22 |           leaf_stomatal_conductance{get_input(input_quantities, "leaf_stomatal_conductance")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:42:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   42 |     double const& leaf_net_irradiance;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:23:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_net_irradiance"), std::allocator<char>()))'
   23 |           leaf_net_irradiance{get_input(input_quantities, "leaf_net_irradiance")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:43:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   43 |     double const& vapor_density_deficit;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:24:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vapor_density_deficit"), std::allocator<char>()))'
   24 |           vapor_density_deficit{get_input(input_quantities, "vapor_density_deficit")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:44:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   44 |     double const& temp;
      |                   ^~~~
module_library/penman_monteith_leaf_temperature.h:25:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   25 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:65:
module_library/penman_monteith_transpiration.h: In constructor 'standardBML::penman_monteith_transpiration::penman_monteith_transpiration(const state_map&, state_map*)':
module_library/penman_monteith_transpiration.h:36:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   36 |     double const& slope_water_vapor;
      |                   ^~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:18:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"slope_water_vapor"), std::allocator<char>()))'
   18 |           slope_water_vapor{get_input(input_quantities, "slope_water_vapor")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:37:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   37 |     double const& psychrometric_parameter;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:19:44: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"psychrometric_parameter"), std::allocator<char>()))'
   19 |           psychrometric_parameter{get_input(input_quantities, "psychrometric_parameter")},
      |                                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:38:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   38 |     double const& latent_heat_vaporization_of_water;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:20:54: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"latent_heat_vaporization_of_water"), std::allocator<char>()))'
   20 |           latent_heat_vaporization_of_water{get_input(input_quantities, "latent_heat_vaporization_of_water")},
      |                                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:39:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   39 |     double const& leaf_boundary_layer_conductance;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:21:52: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_boundary_layer_conductance"), std::allocator<char>()))'
   21 |           leaf_boundary_layer_conductance{get_input(input_quantities, "leaf_boundary_layer_conductance")},
      |                                           ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:40:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   40 |     double const& leaf_stomatal_conductance;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:22:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_stomatal_conductance"), std::allocator<char>()))'
   22 |           leaf_stomatal_conductance{get_input(input_quantities, "leaf_stomatal_conductance")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:41:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   41 |     double const& leaf_net_irradiance;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:23:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_net_irradiance"), std::allocator<char>()))'
   23 |           leaf_net_irradiance{get_input(input_quantities, "leaf_net_irradiance")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:42:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   42 |     double const& vapor_density_deficit;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_transpiration.h:24:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vapor_density_deficit"), std::allocator<char>()))'
   24 |           vapor_density_deficit{get_input(input_quantities, "vapor_density_deficit")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:69:
module_library/rasmussen_specific_heat.h: In constructor 'standardBML::rasmussen_specific_heat::rasmussen_specific_heat(const state_map&, state_map*)':
module_library/rasmussen_specific_heat.h:64:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   64 |     double const& temp;
      |                   ^~~~
module_library/rasmussen_specific_heat.h:51:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   51 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rasmussen_specific_heat.h:65:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   65 |     double const& mole_fraction_h2o_atmosphere;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rasmussen_specific_heat.h:52:49: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mole_fraction_h2o_atmosphere"), std::allocator<char>()))'
   52 |           mole_fraction_h2o_atmosphere{get_input(input_quantities, "mole_fraction_h2o_atmosphere")},
      |                                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:70:
module_library/rh_to_mole_fraction.h: In constructor 'standardBML::rh_to_mole_fraction::rh_to_mole_fraction(const state_map&, state_map*)':
module_library/rh_to_mole_fraction.h:64:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   64 |     double const& rh;
      |                   ^~
module_library/rh_to_mole_fraction.h:50:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   50 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rh_to_mole_fraction.h:65:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   65 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/rh_to_mole_fraction.h:51:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   51 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rh_to_mole_fraction.h:66:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   66 |     double const& saturation_water_vapor_pressure_atmosphere;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rh_to_mole_fraction.h:52:63: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"saturation_water_vapor_pressure_atmosphere"), std::allocator<char>()))'
   52 |           saturation_water_vapor_pressure_atmosphere{get_input(input_quantities, "saturation_water_vapor_pressure_atmosphere")},
      |                                                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:72:
module_library/senescence_coefficient_logistic.h: In constructor 'standardBML::senescence_coefficient_logistic::senescence_coefficient_logistic(const state_map&, state_map*)':
module_library/senescence_coefficient_logistic.h:87:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   87 |     const double& DVI;
      |                   ^~~
module_library/senescence_coefficient_logistic.h:60:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"DVI"), std::allocator<char>()))'
   60 |           DVI{get_input(input_quantities, "DVI")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:88:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   88 |     const double& alphaSeneStem;
      |                   ^~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:61:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alphaSeneStem"), std::allocator<char>()))'
   61 |           alphaSeneStem{get_input(input_quantities, "alphaSeneStem")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:89:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   89 |     const double& alphaSeneLeaf;
      |                   ^~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:62:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alphaSeneLeaf"), std::allocator<char>()))'
   62 |           alphaSeneLeaf{get_input(input_quantities, "alphaSeneLeaf")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:90:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   90 |     const double& betaSeneStem;
      |                   ^~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:63:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"betaSeneStem"), std::allocator<char>()))'
   63 |           betaSeneStem{get_input(input_quantities, "betaSeneStem")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:91:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   91 |     const double& betaSeneLeaf;
      |                   ^~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:64:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"betaSeneLeaf"), std::allocator<char>()))'
   64 |           betaSeneLeaf{get_input(input_quantities, "betaSeneLeaf")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:92:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   92 |     const double& rateSeneLeaf;
      |                   ^~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:65:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rateSeneLeaf"), std::allocator<char>()))'
   65 |           rateSeneLeaf{get_input(input_quantities, "rateSeneLeaf")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:93:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   93 |     const double& rateSeneStem;
      |                   ^~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:66:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rateSeneStem"), std::allocator<char>()))'
   66 |           rateSeneStem{get_input(input_quantities, "rateSeneStem")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:94:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   94 |     const double& alphaSeneRoot;
      |                   ^~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:67:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alphaSeneRoot"), std::allocator<char>()))'
   67 |           alphaSeneRoot{get_input(input_quantities, "alphaSeneRoot")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:95:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   95 |     const double& alphaSeneRhizome;
      |                   ^~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:68:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alphaSeneRhizome"), std::allocator<char>()))'
   68 |           alphaSeneRhizome{get_input(input_quantities, "alphaSeneRhizome")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:96:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   96 |     const double& betaSeneRoot;
      |                   ^~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:69:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"betaSeneRoot"), std::allocator<char>()))'
   69 |           betaSeneRoot{get_input(input_quantities, "betaSeneRoot")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     const double& betaSeneRhizome;
      |                   ^~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:70:36: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"betaSeneRhizome"), std::allocator<char>()))'
   70 |           betaSeneRhizome{get_input(input_quantities, "betaSeneRhizome")},
      |                           ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     const double& rateSeneRoot;
      |                   ^~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:71:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rateSeneRoot"), std::allocator<char>()))'
   71 |           rateSeneRoot{get_input(input_quantities, "rateSeneRoot")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     const double& rateSeneRhizome;
      |                   ^~~~~~~~~~~~~~~
module_library/senescence_coefficient_logistic.h:72:36: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rateSeneRhizome"), std::allocator<char>()))'
   72 |           rateSeneRhizome{get_input(input_quantities, "rateSeneRhizome")},
      |                           ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:73:
module_library/senescence_logistic.h: In constructor 'standardBML::senescence_logistic::senescence_logistic(const state_map&, state_map*)':
module_library/senescence_logistic.h:66:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   66 |     const double& Leaf;
      |                   ^~~~
module_library/senescence_logistic.h:31:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Leaf"), std::allocator<char>()))'
   31 |           Leaf{get_input(input_quantities, "Leaf")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:67:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   67 |     const double& Stem;
      |                   ^~~~
module_library/senescence_logistic.h:32:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Stem"), std::allocator<char>()))'
   32 |           Stem{get_input(input_quantities, "Stem")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:68:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   68 |     const double& Root;
      |                   ^~~~
module_library/senescence_logistic.h:33:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Root"), std::allocator<char>()))'
   33 |           Root{get_input(input_quantities, "Root")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:69:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   69 |     const double& Rhizome;
      |                   ^~~~~~~
module_library/senescence_logistic.h:34:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rhizome"), std::allocator<char>()))'
   34 |           Rhizome{get_input(input_quantities, "Rhizome")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:70:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   70 |     const double& kSeneLeaf;
      |                   ^~~~~~~~~
module_library/senescence_logistic.h:35:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kSeneLeaf"), std::allocator<char>()))'
   35 |           kSeneLeaf{get_input(input_quantities, "kSeneLeaf")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:71:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   71 |     const double& kSeneStem;
      |                   ^~~~~~~~~
module_library/senescence_logistic.h:36:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kSeneStem"), std::allocator<char>()))'
   36 |           kSeneStem{get_input(input_quantities, "kSeneStem")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:72:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   72 |     const double& kSeneRoot;
      |                   ^~~~~~~~~
module_library/senescence_logistic.h:37:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kSeneRoot"), std::allocator<char>()))'
   37 |           kSeneRoot{get_input(input_quantities, "kSeneRoot")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:73:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   73 |     const double& kSeneRhizome;
      |                   ^~~~~~~~~~~~
module_library/senescence_logistic.h:38:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kSeneRhizome"), std::allocator<char>()))'
   38 |           kSeneRhizome{get_input(input_quantities, "kSeneRhizome")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:74:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   74 |     const double& kLeaf;
      |                   ^~~~~
module_library/senescence_logistic.h:39:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kLeaf"), std::allocator<char>()))'
   39 |           kLeaf{get_input(input_quantities, "kLeaf")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:75:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   75 |     const double& kStem;
      |                   ^~~~~
module_library/senescence_logistic.h:40:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kStem"), std::allocator<char>()))'
   40 |           kStem{get_input(input_quantities, "kStem")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:76:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   76 |     const double& kRoot;
      |                   ^~~~~
module_library/senescence_logistic.h:41:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRoot"), std::allocator<char>()))'
   41 |           kRoot{get_input(input_quantities, "kRoot")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:77:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   77 |     const double& kRhizome;
      |                   ^~~~~~~~
module_library/senescence_logistic.h:42:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRhizome"), std::allocator<char>()))'
   42 |           kRhizome{get_input(input_quantities, "kRhizome")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:78:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   78 |     const double& kGrain;
      |                   ^~~~~~
module_library/senescence_logistic.h:43:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kGrain"), std::allocator<char>()))'
   43 |           kGrain{get_input(input_quantities, "kGrain")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:79:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   79 |     const double& kShell;
      |                   ^~~~~~
module_library/senescence_logistic.h:44:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kShell"), std::allocator<char>()))'
   44 |           kShell{get_input(input_quantities, "kShell")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:80:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   80 |     const double& remobilization_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~
module_library/senescence_logistic.h:45:44: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"remobilization_fraction"), std::allocator<char>()))'
   45 |           remobilization_fraction{get_input(input_quantities, "remobilization_fraction")},
      |                                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:74:
module_library/shortwave_atmospheric_scattering.h: In constructor 'standardBML::shortwave_atmospheric_scattering::shortwave_atmospheric_scattering(const state_map&, state_map*)':
module_library/shortwave_atmospheric_scattering.h:44:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   44 |     double const& cosine_zenith_angle;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/shortwave_atmospheric_scattering.h:26:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cosine_zenith_angle"), std::allocator<char>()))'
   26 |           cosine_zenith_angle{get_input(input_quantities, "cosine_zenith_angle")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/shortwave_atmospheric_scattering.h:45:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   45 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/shortwave_atmospheric_scattering.h:27:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   27 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/shortwave_atmospheric_scattering.h:46:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   46 |     double const& atmospheric_transmittance;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/shortwave_atmospheric_scattering.h:28:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_transmittance"), std::allocator<char>()))'
   28 |           atmospheric_transmittance{get_input(input_quantities, "atmospheric_transmittance")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/shortwave_atmospheric_scattering.h:47:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   47 |     double const& atmospheric_scattering;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/shortwave_atmospheric_scattering.h:29:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_scattering"), std::allocator<char>()))'
   29 |           atmospheric_scattering{get_input(input_quantities, "atmospheric_scattering")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:75:
module_library/sla_linear.h: In constructor 'standardBML::sla_linear::sla_linear(const state_map&, state_map*)':
module_library/sla_linear.h:50:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   50 |     double const& iSp;
      |                   ^~~
module_library/sla_linear.h:36:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"iSp"), std::allocator<char>()))'
   36 |           iSp{get_input(input_quantities, "iSp")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/sla_linear.h:51:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   51 |     double const& Sp_thermal_time_decay;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/sla_linear.h:37:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Sp_thermal_time_decay"), std::allocator<char>()))'
   37 |           Sp_thermal_time_decay{get_input(input_quantities, "Sp_thermal_time_decay")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/sla_linear.h:52:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   52 |     double const& TTc;
      |                   ^~~
module_library/sla_linear.h:38:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTc"), std::allocator<char>()))'
   38 |           TTc{get_input(input_quantities, "TTc")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:76:
module_library/sla_logistic.h: In constructor 'standardBML::sla_logistic::sla_logistic(const state_map&, state_map*)':
module_library/sla_logistic.h:55:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   55 |     double const& Sp_final;
      |                   ^~~~~~~~
module_library/sla_logistic.h:39:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Sp_final"), std::allocator<char>()))'
   39 |           Sp_final{get_input(input_quantities, "Sp_final")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/sla_logistic.h:56:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   56 |     double const& Sp_initial;
      |                   ^~~~~~~~~~
module_library/sla_logistic.h:40:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Sp_initial"), std::allocator<char>()))'
   40 |           Sp_initial{get_input(input_quantities, "Sp_initial")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/sla_logistic.h:57:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   57 |     double const& Sp_k;
      |                   ^~~~
module_library/sla_logistic.h:41:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Sp_k"), std::allocator<char>()))'
   41 |           Sp_k{get_input(input_quantities, "Sp_k")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/sla_logistic.h:58:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   58 |     double const& Sp_TTc_0;
      |                   ^~~~~~~~
module_library/sla_logistic.h:42:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Sp_TTc_0"), std::allocator<char>()))'
   42 |           Sp_TTc_0{get_input(input_quantities, "Sp_TTc_0")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/sla_logistic.h:59:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   59 |     double const& TTc;
      |                   ^~~
module_library/sla_logistic.h:43:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTc"), std::allocator<char>()))'
   43 |           TTc{get_input(input_quantities, "TTc")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:77:
module_library/soil_evaporation.h: In constructor 'standardBML::soil_evaporation::soil_evaporation(const state_map&, state_map*)':
module_library/soil_evaporation.h:44:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   44 |     double const& lai;
      |                   ^~~
module_library/soil_evaporation.h:19:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   19 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:45:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   45 |     double const& temp;
      |                   ^~~~
module_library/soil_evaporation.h:20:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   20 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:46:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   46 |     double const& solar;
      |                   ^~~~~
module_library/soil_evaporation.h:21:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"solar"), std::allocator<char>()))'
   21 |           solar{get_input(input_quantities, "solar")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:47:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   47 |     double const& soil_water_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:22:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_water_content"), std::allocator<char>()))'
   22 |           soil_water_content{get_input(input_quantities, "soil_water_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:48:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   48 |     double const& soil_field_capacity;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:23:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_field_capacity"), std::allocator<char>()))'
   23 |           soil_field_capacity{get_input(input_quantities, "soil_field_capacity")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:49:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   49 |     double const& soil_wilting_point;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:24:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_wilting_point"), std::allocator<char>()))'
   24 |           soil_wilting_point{get_input(input_quantities, "soil_wilting_point")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:50:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   50 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/soil_evaporation.h:25:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   25 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:51:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   51 |     double const& rh;
      |                   ^~
module_library/soil_evaporation.h:26:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   26 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:52:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   52 |     double const& rsec;
      |                   ^~~~
module_library/soil_evaporation.h:27:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rsec"), std::allocator<char>()))'
   27 |           rsec{get_input(input_quantities, "rsec")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:53:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   53 |     double const& soil_clod_size;
      |                   ^~~~~~~~~~~~~~
module_library/soil_evaporation.h:28:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_clod_size"), std::allocator<char>()))'
   28 |           soil_clod_size{get_input(input_quantities, "soil_clod_size")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:54:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   54 |     double const& soil_reflectance;
      |                   ^~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:29:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_reflectance"), std::allocator<char>()))'
   29 |           soil_reflectance{get_input(input_quantities, "soil_reflectance")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:55:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   55 |     double const& soil_transmission;
      |                   ^~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:30:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_transmission"), std::allocator<char>()))'
   30 |           soil_transmission{get_input(input_quantities, "soil_transmission")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:56:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   56 |     double const& specific_heat_of_air;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:31:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"specific_heat_of_air"), std::allocator<char>()))'
   31 |           specific_heat_of_air{get_input(input_quantities, "specific_heat_of_air")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:57:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   57 |     double const& par_energy_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/soil_evaporation.h:32:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_content"), std::allocator<char>()))'
   32 |           par_energy_content{get_input(input_quantities, "par_energy_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:78:
module_library/soil_sunlight.h: In constructor 'standardBML::soil_sunlight::soil_sunlight(const state_map&, state_map*)':
module_library/soil_sunlight.h:57:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   57 |     double const& canopy_direct_transmission_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_sunlight.h:44:56: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"canopy_direct_transmission_fraction"), std::allocator<char>()))'
   44 |           canopy_direct_transmission_fraction{get_input(input_quantities, "canopy_direct_transmission_fraction")},
      |                                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soil_sunlight.h:58:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   58 |     double const& litter_cover_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/soil_sunlight.h:45:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"litter_cover_fraction"), std::allocator<char>()))'
   45 |           litter_cover_fraction{get_input(input_quantities, "litter_cover_fraction")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:79:
module_library/solar_position_michalsky.h: In constructor 'standardBML::solar_position_michalsky::solar_position_michalsky(const state_map&, state_map*)':
module_library/solar_position_michalsky.h:133:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  133 |     double const& lat;
      |                   ^~~
module_library/solar_position_michalsky.h:105:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lat"), std::allocator<char>()))'
  105 |           lat{get_input(input_quantities, "lat")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/solar_position_michalsky.h:134:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  134 |     double const& longitude;
      |                   ^~~~~~~~~
module_library/solar_position_michalsky.h:106:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"longitude"), std::allocator<char>()))'
  106 |           longitude{get_input(input_quantities, "longitude")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/solar_position_michalsky.h:135:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  135 |     double const& fractional_doy;
      |                   ^~~~~~~~~~~~~~
module_library/solar_position_michalsky.h:107:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"fractional_doy"), std::allocator<char>()))'
  107 |           fractional_doy{get_input(input_quantities, "fractional_doy")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/solar_position_michalsky.h:136:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  136 |     double const& time_zone_offset;
      |                   ^~~~~~~~~~~~~~~~
module_library/solar_position_michalsky.h:108:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"time_zone_offset"), std::allocator<char>()))'
  108 |           time_zone_offset{get_input(input_quantities, "time_zone_offset")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/solar_position_michalsky.h:137:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  137 |     double const& year;
      |                   ^~~~
module_library/solar_position_michalsky.h:109:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"year"), std::allocator<char>()))'
  109 |           year{get_input(input_quantities, "year")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:81:
module_library/soybean_development_rate_calculator.h: In constructor 'standardBML::soybean_development_rate_calculator::soybean_development_rate_calculator(const state_map&, state_map*)':
module_library/soybean_development_rate_calculator.h:92:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   92 |     double const& fractional_doy;
      |                   ^~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:63:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"fractional_doy"), std::allocator<char>()))'
   63 |           fractional_doy{get_input(input_quantities, "fractional_doy")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:93:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   93 |     double const& sowing_fractional_doy;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:64:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"sowing_fractional_doy"), std::allocator<char>()))'
   64 |           sowing_fractional_doy{get_input(input_quantities, "sowing_fractional_doy")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:94:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   94 |     double const& maturity_group;
      |                   ^~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:65:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"maturity_group"), std::allocator<char>()))'
   65 |           maturity_group{get_input(input_quantities, "maturity_group")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:95:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   95 |     double const& DVI;
      |                   ^~~
module_library/soybean_development_rate_calculator.h:66:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"DVI"), std::allocator<char>()))'
   66 |           DVI{get_input(input_quantities, "DVI")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:96:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   96 |     double const& day_length;
      |                   ^~~~~~~~~~
module_library/soybean_development_rate_calculator.h:67:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"day_length"), std::allocator<char>()))'
   67 |           day_length{get_input(input_quantities, "day_length")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     double const& temp;
      |                   ^~~~
module_library/soybean_development_rate_calculator.h:68:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   68 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     double const& Tbase_emr;
      |                   ^~~~~~~~~
module_library/soybean_development_rate_calculator.h:69:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tbase_emr"), std::allocator<char>()))'
   69 |           Tbase_emr{get_input(input_quantities, "Tbase_emr")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     double const& TTemr_threshold;
      |                   ^~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:70:36: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTemr_threshold"), std::allocator<char>()))'
   70 |           TTemr_threshold{get_input(input_quantities, "TTemr_threshold")},
      |                           ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     double const& Rmax_emrV0;
      |                   ^~~~~~~~~~
module_library/soybean_development_rate_calculator.h:71:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rmax_emrV0"), std::allocator<char>()))'
   71 |           Rmax_emrV0{get_input(input_quantities, "Rmax_emrV0")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     double const& Tmin_emrV0;
      |                   ^~~~~~~~~~
module_library/soybean_development_rate_calculator.h:72:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tmin_emrV0"), std::allocator<char>()))'
   72 |           Tmin_emrV0{get_input(input_quantities, "Tmin_emrV0")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:102:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  102 |     double const& Topt_emrV0;
      |                   ^~~~~~~~~~
module_library/soybean_development_rate_calculator.h:73:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Topt_emrV0"), std::allocator<char>()))'
   73 |           Topt_emrV0{get_input(input_quantities, "Topt_emrV0")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:103:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  103 |     double const& Tmax_emrV0;
      |                   ^~~~~~~~~~
module_library/soybean_development_rate_calculator.h:74:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tmax_emrV0"), std::allocator<char>()))'
   74 |           Tmax_emrV0{get_input(input_quantities, "Tmax_emrV0")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:104:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  104 |     double const& Tmin_R0R1;
      |                   ^~~~~~~~~
module_library/soybean_development_rate_calculator.h:75:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tmin_R0R1"), std::allocator<char>()))'
   75 |           Tmin_R0R1{get_input(input_quantities, "Tmin_R0R1")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:105:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  105 |     double const& Topt_R0R1;
      |                   ^~~~~~~~~
module_library/soybean_development_rate_calculator.h:76:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Topt_R0R1"), std::allocator<char>()))'
   76 |           Topt_R0R1{get_input(input_quantities, "Topt_R0R1")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     double const& Tmax_R0R1;
      |                   ^~~~~~~~~
module_library/soybean_development_rate_calculator.h:77:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tmax_R0R1"), std::allocator<char>()))'
   77 |           Tmax_R0R1{get_input(input_quantities, "Tmax_R0R1")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& Tmin_R1R7;
      |                   ^~~~~~~~~
module_library/soybean_development_rate_calculator.h:78:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tmin_R1R7"), std::allocator<char>()))'
   78 |           Tmin_R1R7{get_input(input_quantities, "Tmin_R1R7")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& Topt_R1R7;
      |                   ^~~~~~~~~
module_library/soybean_development_rate_calculator.h:79:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Topt_R1R7"), std::allocator<char>()))'
   79 |           Topt_R1R7{get_input(input_quantities, "Topt_R1R7")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/soybean_development_rate_calculator.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& Tmax_R1R7;
      |                   ^~~~~~~~~
module_library/soybean_development_rate_calculator.h:80:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tmax_R1R7"), std::allocator<char>()))'
   80 |           Tmax_R1R7{get_input(input_quantities, "Tmax_R1R7")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:82:
module_library/stefan_boltzmann_longwave.h: In constructor 'standardBML::stefan_boltzmann_longwave::stefan_boltzmann_longwave(const state_map&, state_map*)':
module_library/stefan_boltzmann_longwave.h:38:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   38 |     double const& emissivity_sky;
      |                   ^~~~~~~~~~~~~~
module_library/stefan_boltzmann_longwave.h:25:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"emissivity_sky"), std::allocator<char>()))'
   25 |           emissivity_sky{get_input(input_quantities, "emissivity_sky")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/stefan_boltzmann_longwave.h:39:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   39 |     double const& temp;
      |                   ^~~~
module_library/stefan_boltzmann_longwave.h:26:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   26 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:87:
module_library/thermal_time_and_frost_senescence.h: In constructor 'standardBML::thermal_time_and_frost_senescence::thermal_time_and_frost_senescence(const state_map&, state_map*)':
module_library/thermal_time_and_frost_senescence.h:158:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  158 |     double const& TTc;
      |                   ^~~
module_library/thermal_time_and_frost_senescence.h:101:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTc"), std::allocator<char>()))'
  101 |           TTc{get_input(input_quantities, "TTc")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:159:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  159 |     double const& seneLeaf;
      |                   ^~~~~~~~
module_library/thermal_time_and_frost_senescence.h:102:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"seneLeaf"), std::allocator<char>()))'
  102 |           seneLeaf{get_input(input_quantities, "seneLeaf")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:160:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  160 |     double const& seneStem;
      |                   ^~~~~~~~
module_library/thermal_time_and_frost_senescence.h:103:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"seneStem"), std::allocator<char>()))'
  103 |           seneStem{get_input(input_quantities, "seneStem")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:161:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  161 |     double const& seneRoot;
      |                   ^~~~~~~~
module_library/thermal_time_and_frost_senescence.h:104:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"seneRoot"), std::allocator<char>()))'
  104 |           seneRoot{get_input(input_quantities, "seneRoot")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:162:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  162 |     double const& seneRhizome;
      |                   ^~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:105:32: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"seneRhizome"), std::allocator<char>()))'
  105 |           seneRhizome{get_input(input_quantities, "seneRhizome")},
      |                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:163:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  163 |     double const& Leaf;
      |                   ^~~~
module_library/thermal_time_and_frost_senescence.h:106:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Leaf"), std::allocator<char>()))'
  106 |           Leaf{get_input(input_quantities, "Leaf")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:164:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  164 |     double const& leafdeathrate;
      |                   ^~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:107:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafdeathrate"), std::allocator<char>()))'
  107 |           leafdeathrate{get_input(input_quantities, "leafdeathrate")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:165:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  165 |     double const& lat;
      |                   ^~~
module_library/thermal_time_and_frost_senescence.h:108:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lat"), std::allocator<char>()))'
  108 |           lat{get_input(input_quantities, "lat")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:166:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  166 |     double const& doy;
      |                   ^~~
module_library/thermal_time_and_frost_senescence.h:109:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"doy"), std::allocator<char>()))'
  109 |           doy{get_input(input_quantities, "doy")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:167:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  167 |     double const& temp;
      |                   ^~~~
module_library/thermal_time_and_frost_senescence.h:110:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
  110 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:168:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  168 |     double const& Tfrostlow;
      |                   ^~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:111:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tfrostlow"), std::allocator<char>()))'
  111 |           Tfrostlow{get_input(input_quantities, "Tfrostlow")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:169:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  169 |     double const& Tfrosthigh;
      |                   ^~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:112:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tfrosthigh"), std::allocator<char>()))'
  112 |           Tfrosthigh{get_input(input_quantities, "Tfrosthigh")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:170:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  170 |     double const& stem_senescence_index;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:113:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"stem_senescence_index"), std::allocator<char>()))'
  113 |           stem_senescence_index{get_input(input_quantities, "stem_senescence_index")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:171:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  171 |     double const& root_senescence_index;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:114:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"root_senescence_index"), std::allocator<char>()))'
  114 |           root_senescence_index{get_input(input_quantities, "root_senescence_index")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:172:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  172 |     double const& rhizome_senescence_index;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:115:45: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rhizome_senescence_index"), std::allocator<char>()))'
  115 |           rhizome_senescence_index{get_input(input_quantities, "rhizome_senescence_index")},
      |                                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:173:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  173 |     double const& kLeaf;
      |                   ^~~~~
module_library/thermal_time_and_frost_senescence.h:116:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kLeaf"), std::allocator<char>()))'
  116 |           kLeaf{get_input(input_quantities, "kLeaf")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:174:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  174 |     double const& kStem;
      |                   ^~~~~
module_library/thermal_time_and_frost_senescence.h:117:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kStem"), std::allocator<char>()))'
  117 |           kStem{get_input(input_quantities, "kStem")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:175:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  175 |     double const& kRoot;
      |                   ^~~~~
module_library/thermal_time_and_frost_senescence.h:118:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRoot"), std::allocator<char>()))'
  118 |           kRoot{get_input(input_quantities, "kRoot")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:176:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  176 |     double const& kRhizome;
      |                   ^~~~~~~~
module_library/thermal_time_and_frost_senescence.h:119:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRhizome"), std::allocator<char>()))'
  119 |           kRhizome{get_input(input_quantities, "kRhizome")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:177:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  177 |     double const& kGrain;
      |                   ^~~~~~
module_library/thermal_time_and_frost_senescence.h:120:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kGrain"), std::allocator<char>()))'
  120 |           kGrain{get_input(input_quantities, "kGrain")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:178:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  178 |     const double& remobilization_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:121:44: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"remobilization_fraction"), std::allocator<char>()))'
  121 |           remobilization_fraction{get_input(input_quantities, "remobilization_fraction")},
      |                                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:179:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  179 |     double const& net_assimilation_rate_leaf;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:122:47: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_leaf"), std::allocator<char>()))'
  122 |           net_assimilation_rate_leaf{get_input(input_quantities, "net_assimilation_rate_leaf")},
      |                                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:180:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  180 |     double const& net_assimilation_rate_stem;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:123:47: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_stem"), std::allocator<char>()))'
  123 |           net_assimilation_rate_stem{get_input(input_quantities, "net_assimilation_rate_stem")},
      |                                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:181:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  181 |     double const& net_assimilation_rate_root;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:124:47: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_root"), std::allocator<char>()))'
  124 |           net_assimilation_rate_root{get_input(input_quantities, "net_assimilation_rate_root")},
      |                                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:182:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  182 |     double const& net_assimilation_rate_rhizome;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_and_frost_senescence.h:125:50: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_rhizome"), std::allocator<char>()))'
  125 |           net_assimilation_rate_rhizome{get_input(input_quantities, "net_assimilation_rate_rhizome")},
      |                                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:88:
module_library/thermal_time_beta.h: In constructor 'standardBML::thermal_time_beta::thermal_time_beta(const state_map&, state_map*)':
module_library/thermal_time_beta.h:134:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  134 |     double const& fractional_doy;
      |                   ^~~~~~~~~~~~~~
module_library/thermal_time_beta.h:115:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"fractional_doy"), std::allocator<char>()))'
  115 |           fractional_doy{get_input(input_quantities, "fractional_doy")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_beta.h:135:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  135 |     double const& sowing_fractional_doy;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_beta.h:116:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"sowing_fractional_doy"), std::allocator<char>()))'
  116 |           sowing_fractional_doy{get_input(input_quantities, "sowing_fractional_doy")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_beta.h:136:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  136 |     double const& temp;
      |                   ^~~~
module_library/thermal_time_beta.h:117:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
  117 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_beta.h:137:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  137 |     double const& tbase;
      |                   ^~~~~
module_library/thermal_time_beta.h:118:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tbase"), std::allocator<char>()))'
  118 |           tbase{get_input(input_quantities, "tbase")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_beta.h:138:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  138 |     double const& tmax;
      |                   ^~~~
module_library/thermal_time_beta.h:119:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tmax"), std::allocator<char>()))'
  119 |           tmax{get_input(input_quantities, "tmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_beta.h:139:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  139 |     double const& talpha;
      |                   ^~~~~~
module_library/thermal_time_beta.h:120:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"talpha"), std::allocator<char>()))'
  120 |           talpha{get_input(input_quantities, "talpha")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_beta.h:140:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  140 |     double const& tbeta;
      |                   ^~~~~
module_library/thermal_time_beta.h:121:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tbeta"), std::allocator<char>()))'
  121 |           tbeta{get_input(input_quantities, "tbeta")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_beta.h:141:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  141 |     double const& ttc_scale;
      |                   ^~~~~~~~~
module_library/thermal_time_beta.h:122:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"ttc_scale"), std::allocator<char>()))'
  122 |           ttc_scale{get_input(input_quantities, "ttc_scale")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:89:
module_library/thermal_time_bilinear.h: In constructor 'standardBML::thermal_time_bilinear::thermal_time_bilinear(const state_map&, state_map*)':
module_library/thermal_time_bilinear.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     double const& fractional_doy;
      |                   ^~~~~~~~~~~~~~
module_library/thermal_time_bilinear.h:89:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"fractional_doy"), std::allocator<char>()))'
   89 |           fractional_doy{get_input(input_quantities, "fractional_doy")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_bilinear.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& sowing_fractional_doy;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_bilinear.h:90:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"sowing_fractional_doy"), std::allocator<char>()))'
   90 |           sowing_fractional_doy{get_input(input_quantities, "sowing_fractional_doy")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_bilinear.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& temp;
      |                   ^~~~
module_library/thermal_time_bilinear.h:91:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   91 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_bilinear.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& tbase;
      |                   ^~~~~
module_library/thermal_time_bilinear.h:92:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tbase"), std::allocator<char>()))'
   92 |           tbase{get_input(input_quantities, "tbase")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_bilinear.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& topt;
      |                   ^~~~
module_library/thermal_time_bilinear.h:93:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"topt"), std::allocator<char>()))'
   93 |           topt{get_input(input_quantities, "topt")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_bilinear.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& tmax;
      |                   ^~~~
module_library/thermal_time_bilinear.h:94:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tmax"), std::allocator<char>()))'
   94 |           tmax{get_input(input_quantities, "tmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:90:
module_library/thermal_time_development_rate_calculator.h: In constructor 'standardBML::thermal_time_development_rate_calculator::thermal_time_development_rate_calculator(const state_map&, state_map*)':
module_library/thermal_time_development_rate_calculator.h:80:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   80 |     double const& fractional_doy;
      |                   ^~~~~~~~~~~~~~
module_library/thermal_time_development_rate_calculator.h:60:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"fractional_doy"), std::allocator<char>()))'
   60 |           fractional_doy{get_input(input_quantities, "fractional_doy")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_development_rate_calculator.h:81:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   81 |     double const& sowing_fractional_doy;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_development_rate_calculator.h:61:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"sowing_fractional_doy"), std::allocator<char>()))'
   61 |           sowing_fractional_doy{get_input(input_quantities, "sowing_fractional_doy")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_development_rate_calculator.h:82:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   82 |     double const& DVI;
      |                   ^~~
module_library/thermal_time_development_rate_calculator.h:62:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"DVI"), std::allocator<char>()))'
   62 |           DVI{get_input(input_quantities, "DVI")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_development_rate_calculator.h:83:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   83 |     double const& temp;
      |                   ^~~~
module_library/thermal_time_development_rate_calculator.h:63:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   63 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_development_rate_calculator.h:84:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   84 |     double const& tbase;
      |                   ^~~~~
module_library/thermal_time_development_rate_calculator.h:64:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tbase"), std::allocator<char>()))'
   64 |           tbase{get_input(input_quantities, "tbase")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_development_rate_calculator.h:85:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   85 |     double const& TTemr;
      |                   ^~~~~
module_library/thermal_time_development_rate_calculator.h:65:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTemr"), std::allocator<char>()))'
   65 |           TTemr{get_input(input_quantities, "TTemr")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_development_rate_calculator.h:86:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   86 |     double const& TTveg;
      |                   ^~~~~
module_library/thermal_time_development_rate_calculator.h:66:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTveg"), std::allocator<char>()))'
   66 |           TTveg{get_input(input_quantities, "TTveg")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_development_rate_calculator.h:87:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   87 |     double const& TTrep;
      |                   ^~~~~
module_library/thermal_time_development_rate_calculator.h:67:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTrep"), std::allocator<char>()))'
   67 |           TTrep{get_input(input_quantities, "TTrep")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:91:
module_library/thermal_time_linear.h: In constructor 'standardBML::thermal_time_linear::thermal_time_linear(const state_map&, state_map*)':
module_library/thermal_time_linear.h:94:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   94 |     double const& fractional_doy;
      |                   ^~~~~~~~~~~~~~
module_library/thermal_time_linear.h:79:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"fractional_doy"), std::allocator<char>()))'
   79 |           fractional_doy{get_input(input_quantities, "fractional_doy")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_linear.h:95:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   95 |     double const& sowing_fractional_doy;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_linear.h:80:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"sowing_fractional_doy"), std::allocator<char>()))'
   80 |           sowing_fractional_doy{get_input(input_quantities, "sowing_fractional_doy")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_linear.h:96:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   96 |     double const& temp;
      |                   ^~~~
module_library/thermal_time_linear.h:81:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   81 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_linear.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     double const& tbase;
      |                   ^~~~~
module_library/thermal_time_linear.h:82:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tbase"), std::allocator<char>()))'
   82 |           tbase{get_input(input_quantities, "tbase")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:92:
module_library/thermal_time_linear_extended.h: In constructor 'standardBML::thermal_time_linear_extended::thermal_time_linear_extended(const state_map&, state_map*)':
module_library/thermal_time_linear_extended.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     double const& fractional_doy;
      |                   ^~~~~~~~~~~~~~
module_library/thermal_time_linear_extended.h:84:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"fractional_doy"), std::allocator<char>()))'
   84 |           fractional_doy{get_input(input_quantities, "fractional_doy")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_linear_extended.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     double const& sowing_fractional_doy;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_linear_extended.h:85:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"sowing_fractional_doy"), std::allocator<char>()))'
   85 |           sowing_fractional_doy{get_input(input_quantities, "sowing_fractional_doy")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_linear_extended.h:102:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  102 |     double const& temp;
      |                   ^~~~
module_library/thermal_time_linear_extended.h:86:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   86 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_linear_extended.h:103:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  103 |     double const& tbase;
      |                   ^~~~~
module_library/thermal_time_linear_extended.h:87:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tbase"), std::allocator<char>()))'
   87 |           tbase{get_input(input_quantities, "tbase")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_linear_extended.h:104:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  104 |     double const& tupper;
      |                   ^~~~~~
module_library/thermal_time_linear_extended.h:88:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tupper"), std::allocator<char>()))'
   88 |           tupper{get_input(input_quantities, "tupper")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:93:
module_library/thermal_time_senescence.h: In constructor 'standardBML::thermal_time_senescence::thermal_time_senescence(const state_map&, state_map*)':
module_library/thermal_time_senescence.h:152:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  152 |     double const& TTc;
      |                   ^~~
module_library/thermal_time_senescence.h:101:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"TTc"), std::allocator<char>()))'
  101 |           TTc{get_input(input_quantities, "TTc")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:153:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  153 |     double const& seneLeaf;
      |                   ^~~~~~~~
module_library/thermal_time_senescence.h:102:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"seneLeaf"), std::allocator<char>()))'
  102 |           seneLeaf{get_input(input_quantities, "seneLeaf")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:154:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  154 |     double const& seneStem;
      |                   ^~~~~~~~
module_library/thermal_time_senescence.h:103:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"seneStem"), std::allocator<char>()))'
  103 |           seneStem{get_input(input_quantities, "seneStem")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:155:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  155 |     double const& seneRoot;
      |                   ^~~~~~~~
module_library/thermal_time_senescence.h:104:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"seneRoot"), std::allocator<char>()))'
  104 |           seneRoot{get_input(input_quantities, "seneRoot")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:156:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  156 |     double const& seneRhizome;
      |                   ^~~~~~~~~~~
module_library/thermal_time_senescence.h:105:32: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"seneRhizome"), std::allocator<char>()))'
  105 |           seneRhizome{get_input(input_quantities, "seneRhizome")},
      |                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:157:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  157 |     double const& leaf_senescence_index;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:106:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_senescence_index"), std::allocator<char>()))'
  106 |           leaf_senescence_index{get_input(input_quantities, "leaf_senescence_index")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:158:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  158 |     double const& stem_senescence_index;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:107:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"stem_senescence_index"), std::allocator<char>()))'
  107 |           stem_senescence_index{get_input(input_quantities, "stem_senescence_index")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:159:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  159 |     double const& root_senescence_index;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:108:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"root_senescence_index"), std::allocator<char>()))'
  108 |           root_senescence_index{get_input(input_quantities, "root_senescence_index")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:160:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  160 |     double const& rhizome_senescence_index;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:109:45: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rhizome_senescence_index"), std::allocator<char>()))'
  109 |           rhizome_senescence_index{get_input(input_quantities, "rhizome_senescence_index")},
      |                                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:161:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  161 |     double const& kStem;
      |                   ^~~~~
module_library/thermal_time_senescence.h:110:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kStem"), std::allocator<char>()))'
  110 |           kStem{get_input(input_quantities, "kStem")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:162:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  162 |     double const& kRoot;
      |                   ^~~~~
module_library/thermal_time_senescence.h:111:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRoot"), std::allocator<char>()))'
  111 |           kRoot{get_input(input_quantities, "kRoot")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:163:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  163 |     double const& kRhizome;
      |                   ^~~~~~~~
module_library/thermal_time_senescence.h:112:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kRhizome"), std::allocator<char>()))'
  112 |           kRhizome{get_input(input_quantities, "kRhizome")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:164:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  164 |     double const& kGrain;
      |                   ^~~~~~
module_library/thermal_time_senescence.h:113:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kGrain"), std::allocator<char>()))'
  113 |           kGrain{get_input(input_quantities, "kGrain")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:165:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  165 |     const double& remobilization_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:114:44: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"remobilization_fraction"), std::allocator<char>()))'
  114 |           remobilization_fraction{get_input(input_quantities, "remobilization_fraction")},
      |                                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:166:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  166 |     double const& net_assimilation_rate_leaf;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:115:47: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_leaf"), std::allocator<char>()))'
  115 |           net_assimilation_rate_leaf{get_input(input_quantities, "net_assimilation_rate_leaf")},
      |                                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:167:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  167 |     double const& net_assimilation_rate_stem;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:116:47: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_stem"), std::allocator<char>()))'
  116 |           net_assimilation_rate_stem{get_input(input_quantities, "net_assimilation_rate_stem")},
      |                                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:168:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  168 |     double const& net_assimilation_rate_root;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:117:47: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_root"), std::allocator<char>()))'
  117 |           net_assimilation_rate_root{get_input(input_quantities, "net_assimilation_rate_root")},
      |                                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:169:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  169 |     double const& net_assimilation_rate_rhizome;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_senescence.h:118:50: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"net_assimilation_rate_rhizome"), std::allocator<char>()))'
  118 |           net_assimilation_rate_rhizome{get_input(input_quantities, "net_assimilation_rate_rhizome")},
      |                                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:94:
module_library/thermal_time_trilinear.h: In constructor 'standardBML::thermal_time_trilinear::thermal_time_trilinear(const state_map&, state_map*)':
module_library/thermal_time_trilinear.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& fractional_doy;
      |                   ^~~~~~~~~~~~~~
module_library/thermal_time_trilinear.h:95:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"fractional_doy"), std::allocator<char>()))'
   95 |           fractional_doy{get_input(input_quantities, "fractional_doy")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_trilinear.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& sowing_fractional_doy;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_trilinear.h:96:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"sowing_fractional_doy"), std::allocator<char>()))'
   96 |           sowing_fractional_doy{get_input(input_quantities, "sowing_fractional_doy")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_trilinear.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& temp;
      |                   ^~~~
module_library/thermal_time_trilinear.h:97:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   97 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_trilinear.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& tbase;
      |                   ^~~~~
module_library/thermal_time_trilinear.h:98:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tbase"), std::allocator<char>()))'
   98 |           tbase{get_input(input_quantities, "tbase")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_trilinear.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& topt_lower;
      |                   ^~~~~~~~~~
module_library/thermal_time_trilinear.h:99:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"topt_lower"), std::allocator<char>()))'
   99 |           topt_lower{get_input(input_quantities, "topt_lower")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_trilinear.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& topt_upper;
      |                   ^~~~~~~~~~
module_library/thermal_time_trilinear.h:100:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"topt_upper"), std::allocator<char>()))'
  100 |           topt_upper{get_input(input_quantities, "topt_upper")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/thermal_time_trilinear.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& tmax;
      |                   ^~~~
module_library/thermal_time_trilinear.h:101:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tmax"), std::allocator<char>()))'
  101 |           tmax{get_input(input_quantities, "tmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:95:
module_library/total_biomass.h: In constructor 'standardBML::total_biomass::total_biomass(const state_map&, state_map*)':
module_library/total_biomass.h:41:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   41 |     const double& Leaf;
      |                   ^~~~
module_library/total_biomass.h:24:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Leaf"), std::allocator<char>()))'
   24 |           Leaf{get_input(input_quantities, "Leaf")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/total_biomass.h:42:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   42 |     const double& Stem;
      |                   ^~~~
module_library/total_biomass.h:25:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Stem"), std::allocator<char>()))'
   25 |           Stem{get_input(input_quantities, "Stem")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/total_biomass.h:43:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   43 |     const double& Root;
      |                   ^~~~
module_library/total_biomass.h:26:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Root"), std::allocator<char>()))'
   26 |           Root{get_input(input_quantities, "Root")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/total_biomass.h:44:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   44 |     const double& Rhizome;
      |                   ^~~~~~~
module_library/total_biomass.h:27:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rhizome"), std::allocator<char>()))'
   27 |           Rhizome{get_input(input_quantities, "Rhizome")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/total_biomass.h:45:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   45 |     const double& Shell;
      |                   ^~~~~
module_library/total_biomass.h:28:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Shell"), std::allocator<char>()))'
   28 |           Shell{get_input(input_quantities, "Shell")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/total_biomass.h:46:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   46 |     const double& Grain;
      |                   ^~~~~
module_library/total_biomass.h:29:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Grain"), std::allocator<char>()))'
   29 |           Grain{get_input(input_quantities, "Grain")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:96:
module_library/two_layer_soil_profile.h: In constructor 'standardBML::two_layer_soil_profile::two_layer_soil_profile(const state_map&, state_map*)':
module_library/two_layer_soil_profile.h:66:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   66 |     double const& cws1;
      |                   ^~~~
module_library/two_layer_soil_profile.h:20:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cws1"), std::allocator<char>()))'
   20 |           cws1{get_input(input_quantities, "cws1")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:67:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   67 |     double const& cws2;
      |                   ^~~~
module_library/two_layer_soil_profile.h:21:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cws2"), std::allocator<char>()))'
   21 |           cws2{get_input(input_quantities, "cws2")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:68:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   68 |     double const& soil_depth1;
      |                   ^~~~~~~~~~~
module_library/two_layer_soil_profile.h:22:32: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_depth1"), std::allocator<char>()))'
   22 |           soil_depth1{get_input(input_quantities, "soil_depth1")},
      |                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:69:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   69 |     double const& soil_depth2;
      |                   ^~~~~~~~~~~
module_library/two_layer_soil_profile.h:23:32: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_depth2"), std::allocator<char>()))'
   23 |           soil_depth2{get_input(input_quantities, "soil_depth2")},
      |                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:70:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   70 |     double const& soil_depth3;
      |                   ^~~~~~~~~~~
module_library/two_layer_soil_profile.h:24:32: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_depth3"), std::allocator<char>()))'
   24 |           soil_depth3{get_input(input_quantities, "soil_depth3")},
      |                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:71:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   71 |     double const& precip;
      |                   ^~~~~~
module_library/two_layer_soil_profile.h:25:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"precip"), std::allocator<char>()))'
   25 |           precip{get_input(input_quantities, "precip")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:72:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   72 |     double const& canopy_transpiration_rate;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:26:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"canopy_transpiration_rate"), std::allocator<char>()))'
   26 |           canopy_transpiration_rate{get_input(input_quantities, "canopy_transpiration_rate")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:73:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   73 |     double const& soil_field_capacity;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:27:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_field_capacity"), std::allocator<char>()))'
   27 |           soil_field_capacity{get_input(input_quantities, "soil_field_capacity")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:74:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   74 |     double const& soil_wilting_point;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:28:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_wilting_point"), std::allocator<char>()))'
   28 |           soil_wilting_point{get_input(input_quantities, "soil_wilting_point")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:75:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   75 |     double const& soil_saturation_capacity;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:29:45: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_saturation_capacity"), std::allocator<char>()))'
   29 |           soil_saturation_capacity{get_input(input_quantities, "soil_saturation_capacity")},
      |                                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:76:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   76 |     double const& soil_air_entry;
      |                   ^~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:30:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_air_entry"), std::allocator<char>()))'
   30 |           soil_air_entry{get_input(input_quantities, "soil_air_entry")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:77:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   77 |     double const& soil_saturated_conductivity;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:31:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_saturated_conductivity"), std::allocator<char>()))'
   31 |           soil_saturated_conductivity{get_input(input_quantities, "soil_saturated_conductivity")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:78:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   78 |     double const& soil_b_coefficient;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:32:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_b_coefficient"), std::allocator<char>()))'
   32 |           soil_b_coefficient{get_input(input_quantities, "soil_b_coefficient")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:79:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   79 |     double const& soil_sand_content;
      |                   ^~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:33:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_sand_content"), std::allocator<char>()))'
   33 |           soil_sand_content{get_input(input_quantities, "soil_sand_content")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:80:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   80 |     double const& phi1;
      |                   ^~~~
module_library/two_layer_soil_profile.h:34:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi1"), std::allocator<char>()))'
   34 |           phi1{get_input(input_quantities, "phi1")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:81:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   81 |     double const& phi2;
      |                   ^~~~
module_library/two_layer_soil_profile.h:35:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi2"), std::allocator<char>()))'
   35 |           phi2{get_input(input_quantities, "phi2")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:82:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   82 |     double const& wsFun;
      |                   ^~~~~
module_library/two_layer_soil_profile.h:36:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"wsFun"), std::allocator<char>()))'
   36 |           wsFun{get_input(input_quantities, "wsFun")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:83:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   83 |     double const& Root;
      |                   ^~~~
module_library/two_layer_soil_profile.h:37:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Root"), std::allocator<char>()))'
   37 |           Root{get_input(input_quantities, "Root")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:84:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   84 |     double const& lai;
      |                   ^~~
module_library/two_layer_soil_profile.h:38:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   38 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:85:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   85 |     double const& temp;
      |                   ^~~~
module_library/two_layer_soil_profile.h:39:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   39 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:86:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   86 |     double const& solar;
      |                   ^~~~~
module_library/two_layer_soil_profile.h:40:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"solar"), std::allocator<char>()))'
   40 |           solar{get_input(input_quantities, "solar")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:87:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   87 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/two_layer_soil_profile.h:41:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   41 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:88:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   88 |     double const& rh;
      |                   ^~
module_library/two_layer_soil_profile.h:42:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   42 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:89:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   89 |     double const& hydrDist;
      |                   ^~~~~~~~
module_library/two_layer_soil_profile.h:43:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"hydrDist"), std::allocator<char>()))'
   43 |           hydrDist{get_input(input_quantities, "hydrDist")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:90:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   90 |     double const& rfl;
      |                   ^~~
module_library/two_layer_soil_profile.h:44:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rfl"), std::allocator<char>()))'
   44 |           rfl{get_input(input_quantities, "rfl")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:91:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   91 |     double const& rsec;
      |                   ^~~~
module_library/two_layer_soil_profile.h:45:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rsec"), std::allocator<char>()))'
   45 |           rsec{get_input(input_quantities, "rsec")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:92:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   92 |     double const& rsdf;
      |                   ^~~~
module_library/two_layer_soil_profile.h:46:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rsdf"), std::allocator<char>()))'
   46 |           rsdf{get_input(input_quantities, "rsdf")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:93:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   93 |     double const& soil_clod_size;
      |                   ^~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:47:35: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_clod_size"), std::allocator<char>()))'
   47 |           soil_clod_size{get_input(input_quantities, "soil_clod_size")},
      |                          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:94:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   94 |     double const& soil_reflectance;
      |                   ^~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:48:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_reflectance"), std::allocator<char>()))'
   48 |           soil_reflectance{get_input(input_quantities, "soil_reflectance")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:95:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   95 |     double const& soil_transmission;
      |                   ^~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:49:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_transmission"), std::allocator<char>()))'
   49 |           soil_transmission{get_input(input_quantities, "soil_transmission")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:96:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   96 |     double const& specific_heat_of_air;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:50:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"specific_heat_of_air"), std::allocator<char>()))'
   50 |           specific_heat_of_air{get_input(input_quantities, "specific_heat_of_air")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     double const& soil_water_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:51:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"soil_water_content"), std::allocator<char>()))'
   51 |           soil_water_content{get_input(input_quantities, "soil_water_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     double const& par_energy_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/two_layer_soil_profile.h:52:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_content"), std::allocator<char>()))'
   52 |           par_energy_content{get_input(input_quantities, "par_energy_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:97:
module_library/varying_Jmax25.h: In constructor 'standardBML::varying_Jmax25::varying_Jmax25(const state_map&, state_map*)':
module_library/varying_Jmax25.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& DVI;
      |                   ^~~
module_library/varying_Jmax25.h:92:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"DVI"), std::allocator<char>()))'
   92 |           DVI{get_input(input_quantities, "DVI")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/varying_Jmax25.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& jmax_mature;
      |                   ^~~~~~~~~~~
module_library/varying_Jmax25.h:93:32: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"jmax_mature"), std::allocator<char>()))'
   93 |           jmax_mature{get_input(input_quantities, "jmax_mature")},
      |                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/varying_Jmax25.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& DVI0_jmax;
      |                   ^~~~~~~~~
module_library/varying_Jmax25.h:94:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"DVI0_jmax"), std::allocator<char>()))'
   94 |           DVI0_jmax{get_input(input_quantities, "DVI0_jmax")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/varying_Jmax25.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& D_DVI;
      |                   ^~~~~
module_library/varying_Jmax25.h:95:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Delta_DVI_jmax"), std::allocator<char>()))'
   95 |           D_DVI{get_input(input_quantities, "Delta_DVI_jmax")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/varying_Jmax25.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& sf_jmax;
      |                   ^~~~~~~
module_library/varying_Jmax25.h:96:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"sf_jmax"), std::allocator<char>()))'
   96 |           sf_jmax{get_input(input_quantities, "sf_jmax")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/module_library.cpp:98:
module_library/water_vapor_properties_from_air_temperature.h: In constructor 'standardBML::water_vapor_properties_from_air_temperature::water_vapor_properties_from_air_temperature(const state_map&, state_map*)':
module_library/water_vapor_properties_from_air_temperature.h:41:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   41 |     double const& temp;
      |                   ^~~~
module_library/water_vapor_properties_from_air_temperature.h:22:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   22 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/water_vapor_properties_from_air_temperature.h:42:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   42 |     double const& rh;
      |                   ^~
module_library/water_vapor_properties_from_air_temperature.h:23:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   23 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/water_vapor_properties_from_air_temperature.h:43:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   43 |     double const& specific_heat_of_air;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/water_vapor_properties_from_air_temperature.h:24:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"specific_heat_of_air"), std::allocator<char>()))'
   24 |           specific_heat_of_air{get_input(input_quantities, "specific_heat_of_air")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mv -f .deps/module_library/module_library.Td .deps/module_library/module_library.d && touch module_library/module_library.o
g++  -std=gnu++11 -MT module_library/multilayer_c3_canopy.o -MMD -MP -MF .deps/module_library/multilayer_c3_canopy.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/multilayer_c3_canopy.o module_library/multilayer_c3_canopy.cpp
In file included from module_library/multilayer_c3_canopy.h:6,
                 from module_library/multilayer_c3_canopy.cpp:1:
module_library/multilayer_canopy_properties.h: In constructor 'standardBML::multilayer_canopy_properties::multilayer_canopy_properties(const int&, const state_map&, state_map*)':
module_library/multilayer_canopy_properties.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& par_incident_direct;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:66:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_incident_direct"), std::allocator<char>()))'
   66 |           par_incident_direct{get_input(input_quantities, "par_incident_direct")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& par_incident_diffuse;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:67:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_incident_diffuse"), std::allocator<char>()))'
   67 |           par_incident_diffuse{get_input(input_quantities, "par_incident_diffuse")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& lai;
      |                   ^~~
module_library/multilayer_canopy_properties.h:68:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   68 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& cosine_zenith_angle;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:69:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cosine_zenith_angle"), std::allocator<char>()))'
   69 |           cosine_zenith_angle{get_input(input_quantities, "cosine_zenith_angle")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& k_diffuse;
      |                   ^~~~~~~~~
module_library/multilayer_canopy_properties.h:70:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"k_diffuse"), std::allocator<char>()))'
   70 |           k_diffuse{get_input(input_quantities, "k_diffuse")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& chil;
      |                   ^~~~
module_library/multilayer_canopy_properties.h:71:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"chil"), std::allocator<char>()))'
   71 |           chil{get_input(input_quantities, "chil")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& heightf;
      |                   ^~~~~~~
module_library/multilayer_canopy_properties.h:72:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"heightf"), std::allocator<char>()))'
   72 |           heightf{get_input(input_quantities, "heightf")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/multilayer_canopy_properties.h:73:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   73 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& LeafN;
      |                   ^~~~~
module_library/multilayer_canopy_properties.h:74:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafN"), std::allocator<char>()))'
   74 |           LeafN{get_input(input_quantities, "LeafN")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& kpLN;
      |                   ^~~~
module_library/multilayer_canopy_properties.h:75:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kpLN"), std::allocator<char>()))'
   75 |           kpLN{get_input(input_quantities, "kpLN")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& lnfun;
      |                   ^~~~~
module_library/multilayer_canopy_properties.h:76:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnfun"), std::allocator<char>()))'
   76 |           lnfun{get_input(input_quantities, "lnfun")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& par_energy_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:77:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_content"), std::allocator<char>()))'
   77 |           par_energy_content{get_input(input_quantities, "par_energy_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& par_energy_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:78:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_fraction"), std::allocator<char>()))'
   78 |           par_energy_fraction{get_input(input_quantities, "par_energy_fraction")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& leaf_transmittance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:79:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_nir"), std::allocator<char>()))'
   79 |           leaf_transmittance_nir{get_input(input_quantities, "leaf_transmittance_nir")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& leaf_transmittance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:80:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_par"), std::allocator<char>()))'
   80 |           leaf_transmittance_par{get_input(input_quantities, "leaf_transmittance_par")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& leaf_reflectance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:81:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_nir"), std::allocator<char>()))'
   81 |           leaf_reflectance_nir{get_input(input_quantities, "leaf_reflectance_nir")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& leaf_reflectance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:82:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_par"), std::allocator<char>()))'
   82 |           leaf_reflectance_par{get_input(input_quantities, "leaf_reflectance_par")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/multilayer_c3_canopy.h:7:
module_library/c3_leaf_photosynthesis.h: In constructor 'standardBML::c3_leaf_photosynthesis::c3_leaf_photosynthesis(const state_map&, state_map*)':
module_library/c3_leaf_photosynthesis.h:92:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   92 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:24:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
   24 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:93:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   93 |     double const& absorbed_ppfd;
      |                   ^~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:25:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_ppfd"), std::allocator<char>()))'
   25 |           absorbed_ppfd{get_input(input_quantities, "absorbed_ppfd")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:94:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   94 |     double const& absorbed_shortwave;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:26:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_shortwave"), std::allocator<char>()))'
   26 |           absorbed_shortwave{get_input(input_quantities, "absorbed_shortwave")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:95:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   95 |     double const& ambient_temperature;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:27:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   27 |           ambient_temperature{get_input(input_quantities, "temp")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:96:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   96 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:28:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   28 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:97:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   97 |     double const& b0;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:29:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   29 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:98:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   98 |     double const& b1;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:30:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   30 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:99:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   99 |     double const& beta_PSII;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:31:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"beta_PSII"), std::allocator<char>()))'
   31 |           beta_PSII{get_input(input_quantities, "beta_PSII")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:100:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  100 |     double const& Catm;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:32:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   32 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:101:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  101 |     double const& electrons_per_carboxylation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:33:48: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_carboxylation"), std::allocator<char>()))'
   33 |           electrons_per_carboxylation{get_input(input_quantities, "electrons_per_carboxylation")},
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:102:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  102 |     double const& electrons_per_oxygenation;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:34:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"electrons_per_oxygenation"), std::allocator<char>()))'
   34 |           electrons_per_oxygenation{get_input(input_quantities, "electrons_per_oxygenation")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:103:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  103 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:35:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
   35 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:104:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  104 |     double const& Gs_min;
      |                   ^~~~~~
module_library/c3_leaf_photosynthesis.h:36:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs_min"), std::allocator<char>()))'
   36 |           Gs_min{get_input(input_quantities, "Gs_min")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:105:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  105 |     double const& Gstar_c;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:37:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_c"), std::allocator<char>()))'
   37 |           Gstar_c{get_input(input_quantities, "Gstar_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:106:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  106 |     double const& Gstar_Ea;
      |                   ^~~~~~~~
module_library/c3_leaf_photosynthesis.h:38:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gstar_Ea"), std::allocator<char>()))'
   38 |           Gstar_Ea{get_input(input_quantities, "Gstar_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& height;
      |                   ^~~~~~
module_library/c3_leaf_photosynthesis.h:39:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"height"), std::allocator<char>()))'
   39 |           height{get_input(input_quantities, "height")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& jmax;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:40:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"jmax"), std::allocator<char>()))'
   40 |           jmax{get_input(input_quantities, "jmax")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& Jmax_c;
      |                   ^~~~~~
module_library/c3_leaf_photosynthesis.h:41:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_c"), std::allocator<char>()))'
   41 |           Jmax_c{get_input(input_quantities, "Jmax_c")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& Jmax_Ea;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:42:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Jmax_Ea"), std::allocator<char>()))'
   42 |           Jmax_Ea{get_input(input_quantities, "Jmax_Ea")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& Kc_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:43:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_c"), std::allocator<char>()))'
   43 |           Kc_c{get_input(input_quantities, "Kc_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& Kc_Ea;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:44:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Kc_Ea"), std::allocator<char>()))'
   44 |           Kc_Ea{get_input(input_quantities, "Kc_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& Ko_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:45:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_c"), std::allocator<char>()))'
   45 |           Ko_c{get_input(input_quantities, "Ko_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& Ko_Ea;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:46:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Ko_Ea"), std::allocator<char>()))'
   46 |           Ko_Ea{get_input(input_quantities, "Ko_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:47:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
   47 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& O2;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:48:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"O2"), std::allocator<char>()))'
   48 |           O2{get_input(input_quantities, "O2")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& phi_PSII_0;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:49:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_0"), std::allocator<char>()))'
   49 |           phi_PSII_0{get_input(input_quantities, "phi_PSII_0")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& phi_PSII_1;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:50:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_1"), std::allocator<char>()))'
   50 |           phi_PSII_1{get_input(input_quantities, "phi_PSII_1")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& phi_PSII_2;
      |                   ^~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:51:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"phi_PSII_2"), std::allocator<char>()))'
   51 |           phi_PSII_2{get_input(input_quantities, "phi_PSII_2")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& Rd;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:52:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
   52 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& Rd_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:53:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_c"), std::allocator<char>()))'
   53 |           Rd_c{get_input(input_quantities, "Rd_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& Rd_Ea;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:54:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd_Ea"), std::allocator<char>()))'
   54 |           Rd_Ea{get_input(input_quantities, "Rd_Ea")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& rh;
      |                   ^~
module_library/c3_leaf_photosynthesis.h:55:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   55 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:124:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  124 |     double const& StomataWS;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:56:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"StomataWS"), std::allocator<char>()))'
   56 |           StomataWS{get_input(input_quantities, "StomataWS")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:125:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  125 |     double const& theta_0;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:57:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_0"), std::allocator<char>()))'
   57 |           theta_0{get_input(input_quantities, "theta_0")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:126:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  126 |     double const& theta_1;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:58:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_1"), std::allocator<char>()))'
   58 |           theta_1{get_input(input_quantities, "theta_1")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:127:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  127 |     double const& theta_2;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:59:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta_2"), std::allocator<char>()))'
   59 |           theta_2{get_input(input_quantities, "theta_2")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:128:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  128 |     double const& Tp_c;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:60:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_c"), std::allocator<char>()))'
   60 |           Tp_c{get_input(input_quantities, "Tp_c")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:129:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  129 |     double const& Tp_Ha;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:61:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Ha"), std::allocator<char>()))'
   61 |           Tp_Ha{get_input(input_quantities, "Tp_Ha")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:130:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  130 |     double const& Tp_Hd;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:62:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_Hd"), std::allocator<char>()))'
   62 |           Tp_Hd{get_input(input_quantities, "Tp_Hd")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:131:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  131 |     double const& Tp_S;
      |                   ^~~~
module_library/c3_leaf_photosynthesis.h:63:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Tp_S"), std::allocator<char>()))'
   63 |           Tp_S{get_input(input_quantities, "Tp_S")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:132:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  132 |     double const& tpu_rate_max;
      |                   ^~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:64:33: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"tpu_rate_max"), std::allocator<char>()))'
   64 |           tpu_rate_max{get_input(input_quantities, "tpu_rate_max")},
      |                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:133:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  133 |     double const& Vcmax_c;
      |                   ^~~~~~~
module_library/c3_leaf_photosynthesis.h:65:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_c"), std::allocator<char>()))'
   65 |           Vcmax_c{get_input(input_quantities, "Vcmax_c")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:134:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  134 |     double const& Vcmax_Ea;
      |                   ^~~~~~~~
module_library/c3_leaf_photosynthesis.h:66:29: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Vcmax_Ea"), std::allocator<char>()))'
   66 |           Vcmax_Ea{get_input(input_quantities, "Vcmax_Ea")},
      |                    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:135:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  135 |     double const& vmax1;
      |                   ^~~~~
module_library/c3_leaf_photosynthesis.h:67:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax1"), std::allocator<char>()))'
   67 |           vmax1{get_input(input_quantities, "vmax1")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c3_leaf_photosynthesis.h:136:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  136 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/c3_leaf_photosynthesis.h:68:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   68 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mv -f .deps/module_library/multilayer_c3_canopy.Td .deps/module_library/multilayer_c3_canopy.d && touch module_library/multilayer_c3_canopy.o
g++  -std=gnu++11 -MT module_library/multilayer_c4_canopy.o -MMD -MP -MF .deps/module_library/multilayer_c4_canopy.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/multilayer_c4_canopy.o module_library/multilayer_c4_canopy.cpp
In file included from module_library/multilayer_c4_canopy.h:6,
                 from module_library/multilayer_c4_canopy.cpp:1:
module_library/multilayer_canopy_properties.h: In constructor 'standardBML::multilayer_canopy_properties::multilayer_canopy_properties(const int&, const state_map&, state_map*)':
module_library/multilayer_canopy_properties.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& par_incident_direct;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:66:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_incident_direct"), std::allocator<char>()))'
   66 |           par_incident_direct{get_input(input_quantities, "par_incident_direct")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& par_incident_diffuse;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:67:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_incident_diffuse"), std::allocator<char>()))'
   67 |           par_incident_diffuse{get_input(input_quantities, "par_incident_diffuse")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& lai;
      |                   ^~~
module_library/multilayer_canopy_properties.h:68:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   68 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& cosine_zenith_angle;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:69:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cosine_zenith_angle"), std::allocator<char>()))'
   69 |           cosine_zenith_angle{get_input(input_quantities, "cosine_zenith_angle")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& k_diffuse;
      |                   ^~~~~~~~~
module_library/multilayer_canopy_properties.h:70:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"k_diffuse"), std::allocator<char>()))'
   70 |           k_diffuse{get_input(input_quantities, "k_diffuse")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& chil;
      |                   ^~~~
module_library/multilayer_canopy_properties.h:71:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"chil"), std::allocator<char>()))'
   71 |           chil{get_input(input_quantities, "chil")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& heightf;
      |                   ^~~~~~~
module_library/multilayer_canopy_properties.h:72:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"heightf"), std::allocator<char>()))'
   72 |           heightf{get_input(input_quantities, "heightf")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/multilayer_canopy_properties.h:73:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   73 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& LeafN;
      |                   ^~~~~
module_library/multilayer_canopy_properties.h:74:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafN"), std::allocator<char>()))'
   74 |           LeafN{get_input(input_quantities, "LeafN")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& kpLN;
      |                   ^~~~
module_library/multilayer_canopy_properties.h:75:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kpLN"), std::allocator<char>()))'
   75 |           kpLN{get_input(input_quantities, "kpLN")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& lnfun;
      |                   ^~~~~
module_library/multilayer_canopy_properties.h:76:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnfun"), std::allocator<char>()))'
   76 |           lnfun{get_input(input_quantities, "lnfun")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& par_energy_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:77:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_content"), std::allocator<char>()))'
   77 |           par_energy_content{get_input(input_quantities, "par_energy_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& par_energy_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:78:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_fraction"), std::allocator<char>()))'
   78 |           par_energy_fraction{get_input(input_quantities, "par_energy_fraction")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& leaf_transmittance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:79:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_nir"), std::allocator<char>()))'
   79 |           leaf_transmittance_nir{get_input(input_quantities, "leaf_transmittance_nir")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& leaf_transmittance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:80:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_par"), std::allocator<char>()))'
   80 |           leaf_transmittance_par{get_input(input_quantities, "leaf_transmittance_par")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& leaf_reflectance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:81:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_nir"), std::allocator<char>()))'
   81 |           leaf_reflectance_nir{get_input(input_quantities, "leaf_reflectance_nir")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& leaf_reflectance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:82:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_par"), std::allocator<char>()))'
   82 |           leaf_reflectance_par{get_input(input_quantities, "leaf_reflectance_par")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/multilayer_c4_canopy.h:7:
module_library/c4_leaf_photosynthesis.h: In constructor 'standardBML::c4_leaf_photosynthesis::c4_leaf_photosynthesis(const state_map&, state_map*)':
module_library/c4_leaf_photosynthesis.h:69:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   69 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:24:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
   24 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:70:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   70 |     double const& absorbed_shortwave;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:25:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_shortwave"), std::allocator<char>()))'
   25 |           absorbed_shortwave{get_input(input_quantities, "absorbed_shortwave")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:71:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   71 |     double const& alpha1;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:26:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alpha1"), std::allocator<char>()))'
   26 |           alpha1{get_input(input_quantities, "alpha1")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:72:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   72 |     double const& ambient_temperature;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:27:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   27 |           ambient_temperature{get_input(input_quantities, "temp")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:73:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   73 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:28:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
   28 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:74:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   74 |     double const& b0;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:29:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
   29 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:75:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   75 |     double const& b1;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:30:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
   30 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:76:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   76 |     double const& beta;
      |                   ^~~~
module_library/c4_leaf_photosynthesis.h:31:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"beta"), std::allocator<char>()))'
   31 |           beta{get_input(input_quantities, "beta")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:77:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   77 |     double const& Catm;
      |                   ^~~~
module_library/c4_leaf_photosynthesis.h:32:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
   32 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:78:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   78 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:33:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
   33 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:79:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   79 |     double const& Gs_min;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:34:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Gs_min"), std::allocator<char>()))'
   34 |           Gs_min{get_input(input_quantities, "Gs_min")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:80:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   80 |     double const& incident_ppfd;
      |                   ^~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:35:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"incident_ppfd"), std::allocator<char>()))'
   35 |           incident_ppfd{get_input(input_quantities, "incident_ppfd")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:81:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   81 |     double const& kparm;
      |                   ^~~~~
module_library/c4_leaf_photosynthesis.h:36:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kparm"), std::allocator<char>()))'
   36 |           kparm{get_input(input_quantities, "kparm")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:82:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   82 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/c4_leaf_photosynthesis.h:37:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
   37 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:83:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   83 |     double const& lowerT;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:38:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lowerT"), std::allocator<char>()))'
   38 |           lowerT{get_input(input_quantities, "lowerT")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:84:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   84 |     double const& Rd;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:39:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
   39 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:85:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   85 |     double const& rh;
      |                   ^~
module_library/c4_leaf_photosynthesis.h:40:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
   40 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:86:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   86 |     double const& StomataWS;
      |                   ^~~~~~~~~
module_library/c4_leaf_photosynthesis.h:41:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"StomataWS"), std::allocator<char>()))'
   41 |           StomataWS{get_input(input_quantities, "StomataWS")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:87:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   87 |     double const& theta;
      |                   ^~~~~
module_library/c4_leaf_photosynthesis.h:42:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"theta"), std::allocator<char>()))'
   42 |           theta{get_input(input_quantities, "theta")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:88:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   88 |     double const& upperT;
      |                   ^~~~~~
module_library/c4_leaf_photosynthesis.h:43:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"upperT"), std::allocator<char>()))'
   43 |           upperT{get_input(input_quantities, "upperT")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:89:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   89 |     double const& vmax1;
      |                   ^~~~~
module_library/c4_leaf_photosynthesis.h:44:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vmax1"), std::allocator<char>()))'
   44 |           vmax1{get_input(input_quantities, "vmax1")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/c4_leaf_photosynthesis.h:90:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   90 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/c4_leaf_photosynthesis.h:45:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   45 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mv -f .deps/module_library/multilayer_c4_canopy.Td .deps/module_library/multilayer_c4_canopy.d && touch module_library/multilayer_c4_canopy.o
g++  -std=gnu++11 -MT module_library/multilayer_canopy_properties.o -MMD -MP -MF .deps/module_library/multilayer_canopy_properties.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/multilayer_canopy_properties.o module_library/multilayer_canopy_properties.cpp
In file included from module_library/multilayer_canopy_properties.cpp:2:
module_library/multilayer_canopy_properties.h: In constructor 'standardBML::multilayer_canopy_properties::multilayer_canopy_properties(const int&, const state_map&, state_map*)':
module_library/multilayer_canopy_properties.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& par_incident_direct;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:66:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_incident_direct"), std::allocator<char>()))'
   66 |           par_incident_direct{get_input(input_quantities, "par_incident_direct")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& par_incident_diffuse;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:67:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_incident_diffuse"), std::allocator<char>()))'
   67 |           par_incident_diffuse{get_input(input_quantities, "par_incident_diffuse")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& lai;
      |                   ^~~
module_library/multilayer_canopy_properties.h:68:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   68 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& cosine_zenith_angle;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:69:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cosine_zenith_angle"), std::allocator<char>()))'
   69 |           cosine_zenith_angle{get_input(input_quantities, "cosine_zenith_angle")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& k_diffuse;
      |                   ^~~~~~~~~
module_library/multilayer_canopy_properties.h:70:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"k_diffuse"), std::allocator<char>()))'
   70 |           k_diffuse{get_input(input_quantities, "k_diffuse")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& chil;
      |                   ^~~~
module_library/multilayer_canopy_properties.h:71:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"chil"), std::allocator<char>()))'
   71 |           chil{get_input(input_quantities, "chil")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& heightf;
      |                   ^~~~~~~
module_library/multilayer_canopy_properties.h:72:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"heightf"), std::allocator<char>()))'
   72 |           heightf{get_input(input_quantities, "heightf")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/multilayer_canopy_properties.h:73:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   73 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& LeafN;
      |                   ^~~~~
module_library/multilayer_canopy_properties.h:74:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafN"), std::allocator<char>()))'
   74 |           LeafN{get_input(input_quantities, "LeafN")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& kpLN;
      |                   ^~~~
module_library/multilayer_canopy_properties.h:75:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kpLN"), std::allocator<char>()))'
   75 |           kpLN{get_input(input_quantities, "kpLN")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& lnfun;
      |                   ^~~~~
module_library/multilayer_canopy_properties.h:76:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnfun"), std::allocator<char>()))'
   76 |           lnfun{get_input(input_quantities, "lnfun")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& par_energy_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:77:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_content"), std::allocator<char>()))'
   77 |           par_energy_content{get_input(input_quantities, "par_energy_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& par_energy_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:78:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_fraction"), std::allocator<char>()))'
   78 |           par_energy_fraction{get_input(input_quantities, "par_energy_fraction")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& leaf_transmittance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:79:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_nir"), std::allocator<char>()))'
   79 |           leaf_transmittance_nir{get_input(input_quantities, "leaf_transmittance_nir")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& leaf_transmittance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:80:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_par"), std::allocator<char>()))'
   80 |           leaf_transmittance_par{get_input(input_quantities, "leaf_transmittance_par")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& leaf_reflectance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:81:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_nir"), std::allocator<char>()))'
   81 |           leaf_reflectance_nir{get_input(input_quantities, "leaf_reflectance_nir")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& leaf_reflectance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:82:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_par"), std::allocator<char>()))'
   82 |           leaf_reflectance_par{get_input(input_quantities, "leaf_reflectance_par")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mv -f .deps/module_library/multilayer_canopy_properties.Td .deps/module_library/multilayer_canopy_properties.d && touch module_library/multilayer_canopy_properties.o
g++  -std=gnu++11 -MT module_library/multilayer_rue_canopy.o -MMD -MP -MF .deps/module_library/multilayer_rue_canopy.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/multilayer_rue_canopy.o module_library/multilayer_rue_canopy.cpp
In file included from module_library/multilayer_rue_canopy.h:6,
                 from module_library/multilayer_rue_canopy.cpp:1:
module_library/multilayer_canopy_properties.h: In constructor 'standardBML::multilayer_canopy_properties::multilayer_canopy_properties(const int&, const state_map&, state_map*)':
module_library/multilayer_canopy_properties.h:107:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  107 |     double const& par_incident_direct;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:66:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_incident_direct"), std::allocator<char>()))'
   66 |           par_incident_direct{get_input(input_quantities, "par_incident_direct")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:108:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  108 |     double const& par_incident_diffuse;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:67:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_incident_diffuse"), std::allocator<char>()))'
   67 |           par_incident_diffuse{get_input(input_quantities, "par_incident_diffuse")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:109:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  109 |     double const& lai;
      |                   ^~~
module_library/multilayer_canopy_properties.h:68:24: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lai"), std::allocator<char>()))'
   68 |           lai{get_input(input_quantities, "lai")},
      |               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:110:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  110 |     double const& cosine_zenith_angle;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:69:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"cosine_zenith_angle"), std::allocator<char>()))'
   69 |           cosine_zenith_angle{get_input(input_quantities, "cosine_zenith_angle")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:111:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  111 |     double const& k_diffuse;
      |                   ^~~~~~~~~
module_library/multilayer_canopy_properties.h:70:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"k_diffuse"), std::allocator<char>()))'
   70 |           k_diffuse{get_input(input_quantities, "k_diffuse")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:112:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  112 |     double const& chil;
      |                   ^~~~
module_library/multilayer_canopy_properties.h:71:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"chil"), std::allocator<char>()))'
   71 |           chil{get_input(input_quantities, "chil")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:113:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  113 |     double const& heightf;
      |                   ^~~~~~~
module_library/multilayer_canopy_properties.h:72:28: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"heightf"), std::allocator<char>()))'
   72 |           heightf{get_input(input_quantities, "heightf")},
      |                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:114:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  114 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/multilayer_canopy_properties.h:73:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
   73 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:115:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  115 |     double const& LeafN;
      |                   ^~~~~
module_library/multilayer_canopy_properties.h:74:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"LeafN"), std::allocator<char>()))'
   74 |           LeafN{get_input(input_quantities, "LeafN")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:116:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  116 |     double const& kpLN;
      |                   ^~~~
module_library/multilayer_canopy_properties.h:75:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"kpLN"), std::allocator<char>()))'
   75 |           kpLN{get_input(input_quantities, "kpLN")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:117:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  117 |     double const& lnfun;
      |                   ^~~~~
module_library/multilayer_canopy_properties.h:76:26: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"lnfun"), std::allocator<char>()))'
   76 |           lnfun{get_input(input_quantities, "lnfun")},
      |                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:118:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  118 |     double const& par_energy_content;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:77:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_content"), std::allocator<char>()))'
   77 |           par_energy_content{get_input(input_quantities, "par_energy_content")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:119:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  119 |     double const& par_energy_fraction;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:78:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"par_energy_fraction"), std::allocator<char>()))'
   78 |           par_energy_fraction{get_input(input_quantities, "par_energy_fraction")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:120:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  120 |     double const& leaf_transmittance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:79:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_nir"), std::allocator<char>()))'
   79 |           leaf_transmittance_nir{get_input(input_quantities, "leaf_transmittance_nir")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:121:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  121 |     double const& leaf_transmittance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:80:43: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_transmittance_par"), std::allocator<char>()))'
   80 |           leaf_transmittance_par{get_input(input_quantities, "leaf_transmittance_par")},
      |                                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:122:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  122 |     double const& leaf_reflectance_nir;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:81:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_nir"), std::allocator<char>()))'
   81 |           leaf_reflectance_nir{get_input(input_quantities, "leaf_reflectance_nir")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:123:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  123 |     double const& leaf_reflectance_par;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/multilayer_canopy_properties.h:82:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_reflectance_par"), std::allocator<char>()))'
   82 |           leaf_reflectance_par{get_input(input_quantities, "leaf_reflectance_par")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from module_library/multilayer_rue_canopy.h:7:
module_library/rue_leaf_photosynthesis.h: In constructor 'standardBML::rue_leaf_photosynthesis::rue_leaf_photosynthesis(const state_map&, state_map*)':
module_library/rue_leaf_photosynthesis.h:173:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  173 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:137:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
  137 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:174:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  174 |     double const& absorbed_shortwave;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:138:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_shortwave"), std::allocator<char>()))'
  138 |           absorbed_shortwave{get_input(input_quantities, "absorbed_shortwave")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:175:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  175 |     double const& alpha_rue;
      |                   ^~~~~~~~~
module_library/rue_leaf_photosynthesis.h:139:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alpha_rue"), std::allocator<char>()))'
  139 |           alpha_rue{get_input(input_quantities, "alpha_rue")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:176:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  176 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:140:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
  140 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:177:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  177 |     double const& b0;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:141:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
  141 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:178:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  178 |     double const& b1;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:142:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
  142 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:179:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  179 |     double const& Catm;
      |                   ^~~~
module_library/rue_leaf_photosynthesis.h:143:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
  143 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:180:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  180 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:144:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
  144 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:181:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  181 |     double const& height;
      |                   ^~~~~~
module_library/rue_leaf_photosynthesis.h:145:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"height"), std::allocator<char>()))'
  145 |           height{get_input(input_quantities, "height")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:182:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  182 |     double const& incident_ppfd;
      |                   ^~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:146:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"incident_ppfd"), std::allocator<char>()))'
  146 |           incident_ppfd{get_input(input_quantities, "incident_ppfd")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:183:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  183 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/rue_leaf_photosynthesis.h:147:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
  147 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:184:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  184 |     double const& Rd;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:148:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
  148 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:185:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  185 |     double const& rh;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:149:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
  149 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:186:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  186 |     double const& temp;
      |                   ^~~~
module_library/rue_leaf_photosynthesis.h:150:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
  150 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:187:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  187 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/rue_leaf_photosynthesis.h:151:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
  151 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:188:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  188 |     double const& windspeed_height;
      |                   ^~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:152:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed_height"), std::allocator<char>()))'
  152 |           windspeed_height{get_input(input_quantities, "windspeed_height")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mv -f .deps/module_library/multilayer_rue_canopy.Td .deps/module_library/multilayer_rue_canopy.d && touch module_library/multilayer_rue_canopy.o
g++  -std=gnu++11 -MT module_library/penman_monteith_leaf_temperature.o -MMD -MP -MF .deps/module_library/penman_monteith_leaf_temperature.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/penman_monteith_leaf_temperature.o module_library/penman_monteith_leaf_temperature.cpp
In file included from module_library/penman_monteith_leaf_temperature.cpp:1:
module_library/penman_monteith_leaf_temperature.h: In constructor 'standardBML::penman_monteith_leaf_temperature::penman_monteith_leaf_temperature(const state_map&, state_map*)':
module_library/penman_monteith_leaf_temperature.h:37:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   37 |     double const& slope_water_vapor;
      |                   ^~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:18:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"slope_water_vapor"), std::allocator<char>()))'
   18 |           slope_water_vapor{get_input(input_quantities, "slope_water_vapor")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:38:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   38 |     double const& psychrometric_parameter;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:19:44: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"psychrometric_parameter"), std::allocator<char>()))'
   19 |           psychrometric_parameter{get_input(input_quantities, "psychrometric_parameter")},
      |                                   ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:39:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   39 |     double const& latent_heat_vaporization_of_water;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:20:54: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"latent_heat_vaporization_of_water"), std::allocator<char>()))'
   20 |           latent_heat_vaporization_of_water{get_input(input_quantities, "latent_heat_vaporization_of_water")},
      |                                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:40:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   40 |     double const& leaf_boundary_layer_conductance;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:21:52: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_boundary_layer_conductance"), std::allocator<char>()))'
   21 |           leaf_boundary_layer_conductance{get_input(input_quantities, "leaf_boundary_layer_conductance")},
      |                                           ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:41:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   41 |     double const& leaf_stomatal_conductance;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:22:46: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_stomatal_conductance"), std::allocator<char>()))'
   22 |           leaf_stomatal_conductance{get_input(input_quantities, "leaf_stomatal_conductance")},
      |                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:42:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   42 |     double const& leaf_net_irradiance;
      |                   ^~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:23:40: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leaf_net_irradiance"), std::allocator<char>()))'
   23 |           leaf_net_irradiance{get_input(input_quantities, "leaf_net_irradiance")},
      |                               ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:43:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   43 |     double const& vapor_density_deficit;
      |                   ^~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:24:42: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"vapor_density_deficit"), std::allocator<char>()))'
   24 |           vapor_density_deficit{get_input(input_quantities, "vapor_density_deficit")},
      |                                 ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/penman_monteith_leaf_temperature.h:44:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   44 |     double const& temp;
      |                   ^~~~
module_library/penman_monteith_leaf_temperature.h:25:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   25 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
mv -f .deps/module_library/penman_monteith_leaf_temperature.Td .deps/module_library/penman_monteith_leaf_temperature.d && touch module_library/penman_monteith_leaf_temperature.o
g++  -std=gnu++11 -MT module_library/rasmussen_specific_heat.o -MMD -MP -MF .deps/module_library/rasmussen_specific_heat.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/rasmussen_specific_heat.o module_library/rasmussen_specific_heat.cpp
In file included from module_library/rasmussen_specific_heat.cpp:1:
module_library/rasmussen_specific_heat.h: In constructor 'standardBML::rasmussen_specific_heat::rasmussen_specific_heat(const state_map&, state_map*)':
module_library/rasmussen_specific_heat.h:64:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   64 |     double const& temp;
      |                   ^~~~
module_library/rasmussen_specific_heat.h:51:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
   51 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rasmussen_specific_heat.h:65:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
   65 |     double const& mole_fraction_h2o_atmosphere;
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rasmussen_specific_heat.h:52:49: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"mole_fraction_h2o_atmosphere"), std::allocator<char>()))'
   52 |           mole_fraction_h2o_atmosphere{get_input(input_quantities, "mole_fraction_h2o_atmosphere")},
      |                                        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mv -f .deps/module_library/rasmussen_specific_heat.Td .deps/module_library/rasmussen_specific_heat.d && touch module_library/rasmussen_specific_heat.o
g++  -std=gnu++11 -MT module_library/rue_leaf_photosynthesis.o -MMD -MP -MF .deps/module_library/rue_leaf_photosynthesis.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/rue_leaf_photosynthesis.o module_library/rue_leaf_photosynthesis.cpp
In file included from module_library/rue_leaf_photosynthesis.cpp:9:
module_library/rue_leaf_photosynthesis.h: In constructor 'standardBML::rue_leaf_photosynthesis::rue_leaf_photosynthesis(const state_map&, state_map*)':
module_library/rue_leaf_photosynthesis.h:173:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  173 |     double const& absorbed_longwave;
      |                   ^~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:137:38: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_longwave"), std::allocator<char>()))'
  137 |           absorbed_longwave{get_input(input_quantities, "absorbed_longwave")},
      |                             ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:174:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  174 |     double const& absorbed_shortwave;
      |                   ^~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:138:39: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"absorbed_shortwave"), std::allocator<char>()))'
  138 |           absorbed_shortwave{get_input(input_quantities, "absorbed_shortwave")},
      |                              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:175:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  175 |     double const& alpha_rue;
      |                   ^~~~~~~~~
module_library/rue_leaf_photosynthesis.h:139:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"alpha_rue"), std::allocator<char>()))'
  139 |           alpha_rue{get_input(input_quantities, "alpha_rue")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:176:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  176 |     double const& atmospheric_pressure;
      |                   ^~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:140:41: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"atmospheric_pressure"), std::allocator<char>()))'
  140 |           atmospheric_pressure{get_input(input_quantities, "atmospheric_pressure")},
      |                                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:177:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  177 |     double const& b0;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:141:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b0"), std::allocator<char>()))'
  141 |           b0{get_input(input_quantities, "b0")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:178:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  178 |     double const& b1;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:142:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"b1"), std::allocator<char>()))'
  142 |           b1{get_input(input_quantities, "b1")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:179:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  179 |     double const& Catm;
      |                   ^~~~
module_library/rue_leaf_photosynthesis.h:143:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Catm"), std::allocator<char>()))'
  143 |           Catm{get_input(input_quantities, "Catm")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:180:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  180 |     double const& gbw_canopy;
      |                   ^~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:144:31: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"gbw_canopy"), std::allocator<char>()))'
  144 |           gbw_canopy{get_input(input_quantities, "gbw_canopy")},
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:181:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  181 |     double const& height;
      |                   ^~~~~~
module_library/rue_leaf_photosynthesis.h:145:27: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"height"), std::allocator<char>()))'
  145 |           height{get_input(input_quantities, "height")},
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:182:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  182 |     double const& incident_ppfd;
      |                   ^~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:146:34: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"incident_ppfd"), std::allocator<char>()))'
  146 |           incident_ppfd{get_input(input_quantities, "incident_ppfd")},
      |                         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:183:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  183 |     double const& leafwidth;
      |                   ^~~~~~~~~
module_library/rue_leaf_photosynthesis.h:147:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"leafwidth"), std::allocator<char>()))'
  147 |           leafwidth{get_input(input_quantities, "leafwidth")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:184:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  184 |     double const& Rd;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:148:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"Rd"), std::allocator<char>()))'
  148 |           Rd{get_input(input_quantities, "Rd")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:185:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  185 |     double const& rh;
      |                   ^~
module_library/rue_leaf_photosynthesis.h:149:23: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"rh"), std::allocator<char>()))'
  149 |           rh{get_input(input_quantities, "rh")},
      |              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:186:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  186 |     double const& temp;
      |                   ^~~~
module_library/rue_leaf_photosynthesis.h:150:25: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"temp"), std::allocator<char>()))'
  150 |           temp{get_input(input_quantities, "temp")},
      |                ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:187:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  187 |     double const& windspeed;
      |                   ^~~~~~~~~
module_library/rue_leaf_photosynthesis.h:151:30: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed"), std::allocator<char>()))'
  151 |           windspeed{get_input(input_quantities, "windspeed")},
      |                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:188:19: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  188 |     double const& windspeed_height;
      |                   ^~~~~~~~~~~~~~~~
module_library/rue_leaf_photosynthesis.h:152:37: note: the temporary was destroyed at the end of the full expression 'get_input((* & input_quantities), std::__cxx11::basic_string<char>(((const char*)"windspeed_height"), std::allocator<char>()))'
  152 |           windspeed_height{get_input(input_quantities, "windspeed_height")},
      |                            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mv -f .deps/module_library/rue_leaf_photosynthesis.Td .deps/module_library/rue_leaf_photosynthesis.d && touch module_library/rue_leaf_photosynthesis.o
g++  -std=gnu++11 -MT module_library/sunML.o -MMD -MP -MF .deps/module_library/sunML.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o module_library/sunML.o module_library/sunML.cpp
mv -f .deps/module_library/sunML.Td .deps/module_library/sunML.d && touch module_library/sunML.o
g++  -std=gnu++11 -MT framework/R_helper_functions.o -MMD -MP -MF .deps/framework/R_helper_functions.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/R_helper_functions.o framework/R_helper_functions.cpp
mv -f .deps/framework/R_helper_functions.Td .deps/framework/R_helper_functions.d && touch framework/R_helper_functions.o
g++  -std=gnu++11 -MT framework/dynamical_system.o -MMD -MP -MF .deps/framework/dynamical_system.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/dynamical_system.o framework/dynamical_system.cpp
mv -f .deps/framework/dynamical_system.Td .deps/framework/dynamical_system.d && touch framework/dynamical_system.o
g++  -std=gnu++11 -MT framework/dynamical_system_helper_functions.o -MMD -MP -MF .deps/framework/dynamical_system_helper_functions.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/dynamical_system_helper_functions.o framework/dynamical_system_helper_functions.cpp
mv -f .deps/framework/dynamical_system_helper_functions.Td .deps/framework/dynamical_system_helper_functions.d && touch framework/dynamical_system_helper_functions.o
g++  -std=gnu++11 -MT framework/module_helper_functions.o -MMD -MP -MF .deps/framework/module_helper_functions.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/module_helper_functions.o framework/module_helper_functions.cpp
mv -f .deps/framework/module_helper_functions.Td .deps/framework/module_helper_functions.d && touch framework/module_helper_functions.o
g++  -std=gnu++11 -MT framework/modules.o -MMD -MP -MF .deps/framework/modules.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/modules.o framework/modules.cpp
mv -f .deps/framework/modules.Td .deps/framework/modules.d && touch framework/modules.o
g++  -std=gnu++11 -MT framework/ode_solver.o -MMD -MP -MF .deps/framework/ode_solver.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/ode_solver.o framework/ode_solver.cpp
mv -f .deps/framework/ode_solver.Td .deps/framework/ode_solver.d && touch framework/ode_solver.o
g++  -std=gnu++11 -MT framework/quadratic_root.o -MMD -MP -MF .deps/framework/quadratic_root.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/quadratic_root.o framework/quadratic_root.cpp
mv -f .deps/framework/quadratic_root.Td .deps/framework/quadratic_root.d && touch framework/quadratic_root.o
g++  -std=gnu++11 -MT framework/state_map.o -MMD -MP -MF .deps/framework/state_map.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/state_map.o framework/state_map.cpp
mv -f .deps/framework/state_map.Td .deps/framework/state_map.d && touch framework/state_map.o
g++  -std=gnu++11 -MT framework/validate_dynamical_system.o -MMD -MP -MF .deps/framework/validate_dynamical_system.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/validate_dynamical_system.o framework/validate_dynamical_system.cpp
mv -f .deps/framework/validate_dynamical_system.Td .deps/framework/validate_dynamical_system.d && touch framework/validate_dynamical_system.o
g++  -std=gnu++11 -MT framework/ode_solver_library/boost_ode_solvers.o -MMD -MP -MF .deps/framework/ode_solver_library/boost_ode_solvers.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/ode_solver_library/boost_ode_solvers.o framework/ode_solver_library/boost_ode_solvers.cpp
mv -f .deps/framework/ode_solver_library/boost_ode_solvers.Td .deps/framework/ode_solver_library/boost_ode_solvers.d && touch framework/ode_solver_library/boost_ode_solvers.o
g++  -std=gnu++11 -MT framework/ode_solver_library/ode_solver_factory.o -MMD -MP -MF .deps/framework/ode_solver_library/ode_solver_factory.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/ode_solver_library/ode_solver_factory.o framework/ode_solver_library/ode_solver_factory.cpp
mv -f .deps/framework/ode_solver_library/ode_solver_factory.Td .deps/framework/ode_solver_library/ode_solver_factory.d && touch framework/ode_solver_library/ode_solver_factory.o
g++  -std=gnu++11 -MT framework/utils/module_dependency_utilities.o -MMD -MP -MF .deps/framework/utils/module_dependency_utilities.Td -I"D:/RCompile/recent/R/include" -DNDEBUG -I../src/inc -DR_NO_REMAP    -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include"      -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign    -c -o framework/utils/module_dependency_utilities.o framework/utils/module_dependency_utilities.cpp
mv -f .deps/framework/utils/module_dependency_utilities.Td .deps/framework/utils/module_dependency_utilities.d && touch framework/utils/module_dependency_utilities.o
g++ -shared -s -static-libgcc -o BioCro.dll tmp.def R_dynamical_system.o R_framework_version.o R_get_all_ode_solvers.o R_module_library.o R_modules.o R_run_biocro.o R_system_derivatives.o init.o module_library/AuxBioCro.o module_library/CanAC.o module_library/FvCB_assim.o module_library/ball_berry_gs.o module_library/boundary_layer_conductance.o module_library/c3CanAC.o module_library/c3_canopy.o module_library/c3_leaf_photosynthesis.o module_library/c3_temperature_response.o module_library/c3photo.o module_library/c4_leaf_photosynthesis.o module_library/c4photo.o module_library/collatz_photo.o module_library/eC4photo.o module_library/leaf_energy_balance.o module_library/lightME.o module_library/module_library.o module_library/multilayer_c3_canopy.o module_library/multilayer_c4_canopy.o module_library/multilayer_canopy_properties.o module_library/multilayer_rue_canopy.o module_library/penman_monteith_leaf_temperature.o module_library/rasmussen_specific_heat.o module_library/rue_leaf_photosynthesis.o module_library/sunML.o framework/R_helper_functions.o framework/dynamical_system.o framework/dynamical_system_helper_functions.o framework/module_helper_functions.o framework/modules.o framework/ode_solver.o framework/quadratic_root.o framework/state_map.o framework/validate_dynamical_system.o framework/ode_solver_library/boost_ode_solvers.o framework/ode_solver_library/ode_solver_factory.o framework/utils/module_dependency_utilities.o -Ld:/rtools45/x86_64-w64-mingw32.static.posix/lib/x64 -Ld:/rtools45/x86_64-w64-mingw32.static.posix/lib -LD:/RCompile/recent/R/bin/x64 -lR
make[1]: Leaving directory '/d/temp/2025_06_29_01_50_00_26597/RtmpsvY45t/R.INSTALL264e024b448f2/BioCro/src'
make[1]: Entering directory '/d/temp/2025_06_29_01_50_00_26597/RtmpsvY45t/R.INSTALL264e024b448f2/BioCro/src'
make[1]: Leaving directory '/d/temp/2025_06_29_01_50_00_26597/RtmpsvY45t/R.INSTALL264e024b448f2/BioCro/src'
installing to d:/Rcompile/CRANpkg/lib/4.6/00LOCK-BioCro/00new/BioCro/libs/x64
** R
** data
*** moving datasets to lazyload DB
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* MD5 sums
packaged installation of 'BioCro' as BioCro_3.2.0.zip
* DONE (BioCro)