* installing to library ‘/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages’
* installing *source* package ‘sd2R’ ...
** this is package ‘sd2R’ version ‘0.1.7’
** package ‘sd2R’ successfully unpacked and MD5 sums checked
** using staged installation
* Downloading vocab.hpp...
* vocab.hpp: downloaded successfully
* Downloading vocab_mistral.hpp...
* vocab_mistral.hpp: downloaded successfully
* Downloading vocab_qwen.hpp...
* vocab_qwen.hpp: downloaded successfully
* Downloading vocab_umt5.hpp...
* vocab_umt5.hpp: downloaded successfully
* ggmlR lib: /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/lib
* ggmlR include: /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include
* OpenMP: enabled (C: -fopenmp, C++: -fopenmp)
* Vulkan: disabled (ggmlR has Vulkan but libvulkan not found for linking)
* Wrote src/Makevars
* Patching sd/ sources for R compatibility...
  patched: conditioner.hpp
  patched: easycache.hpp
  patched: control.hpp
  patched: tokenize_util.cpp
  patched: vocab.hpp
  patched: diffusion_model.hpp
  patched: model.h
  patched: rng_philox.hpp
  patched: name_conversion.h
  patched: tae.hpp
  patched: stable-diffusion.h
  patched: version.cpp
  patched: rng.hpp
  patched: flux.hpp
  patched: ordered_map.hpp
  patched: rope.hpp
  patched: preprocessing.hpp
  patched: cache_dit.hpp
  patched: ltxv.hpp
  patched: ucache.hpp
  patched: clip.hpp
  patched: unet.hpp
  patched: wan.hpp
  patched: vocab_umt5.hpp
  patched: gguf_reader.hpp
  patched: pmid.hpp
  patched: latent-preview.h
  patched: denoiser.hpp
  patched: lora.hpp
  patched: name_conversion.cpp
  patched: stable-diffusion.cpp
  patched: vocab_mistral.hpp
  patched: qwen_image.hpp
  patched: mmdit.hpp
  patched: vocab_qwen.hpp
  patched: util.h
  patched: esrgan.hpp
  patched: tokenize_util.h
  patched: vae.hpp
  patched: common.hpp
  patched: z_image.hpp
  patched: upscaler.cpp
  patched: rng_mt19937.hpp
  patched: util.cpp (unused variable size2)
  patched: util.cpp (sign-compare)
  patched: ggml_extend.hpp (sign-compare N)
  patched: ggml_extend.hpp (unused variable param)
  patched: model.h (unused function)
  patched: thirdparty/json.hpp.inc (literal operator spacing)
  patched: util.h (VA_OPT)
* Done.
** libs
specified C++17
using C++ compiler: ‘Debian clang version 21.1.8 (3+b1)’
using C++17
make[1]: Entering directory '/home/hornik/tmp/scratch/RtmpkzBKFW/R.INSTALL5bc72142cd79d/sd2R/src'
clang++-21 -std=gnu++17 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -Isd -Isd/thirdparty -DGGML_USE_CPU -D_GNU_SOURCE -DGGML_MAX_NAME=128 -DGGML_R_PACKAGE -DGGML_USE_OPENMP  -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -fopenmp -fpic  -g -O3 -Wall -pedantic   -c RcppExports.cpp -o RcppExports.o
clang++-21 -std=gnu++17 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -Isd -Isd/thirdparty -DGGML_USE_CPU -D_GNU_SOURCE -DGGML_MAX_NAME=128 -DGGML_R_PACKAGE -DGGML_USE_OPENMP  -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -fopenmp -fpic  -g -O3 -Wall -pedantic   -c sd2R_interface.cpp -o sd2R_interface.o
sd2R_interface.cpp:203:24: warning: object backing the pointer 'p.model_path' will be destroyed at the end of the full-expression [-Wdangling-assignment-gsl]
  203 |         p.model_path = Rcpp::as<std::string>(params["model_path"]).c_str();
      |                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
clang++-21 -std=gnu++17 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -Isd -Isd/thirdparty -DGGML_USE_CPU -D_GNU_SOURCE -DGGML_MAX_NAME=128 -DGGML_R_PACKAGE -DGGML_USE_OPENMP  -include /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -fopenmp -fpic  -g -O3 -Wall -pedantic   -c sd/stable-diffusion.cpp -o sd/stable-diffusion.o
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:27:
In file included from /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/ggml-alloc.h:3:
/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/ggml.h:204:13: warning: 'GGML_ATTRIBUTE_FORMAT' macro redefined [-Wmacro-redefined]
  204 | #    define GGML_ATTRIBUTE_FORMAT(...) __attribute__((format(printf, __VA_ARGS__)))
      |             ^
/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h:53:9: note: previous definition is here
   53 | #define GGML_ATTRIBUTE_FORMAT(...)
      |         ^
In file included from sd/stable-diffusion.cpp:1:
sd/ggml_extend.hpp:78:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   78 |             LOG_DEBUG(text);
      |                           ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:1:
sd/ggml_extend.hpp:81:26: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   81 |             LOG_INFO(text);
      |                          ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:1:
sd/ggml_extend.hpp:84:26: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   84 |             LOG_WARN(text);
      |                          ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:1:
sd/ggml_extend.hpp:87:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   87 |             LOG_ERROR(text);
      |                           ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:1:
sd/ggml_extend.hpp:90:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   90 |             LOG_DEBUG(text);
      |                           ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:1:
sd/ggml_extend.hpp:294:13: warning: unused variable 'n0' [-Wunused-variable]
  294 |     int64_t n0 = tensor->ne[0];
      |             ^~
sd/ggml_extend.hpp:295:13: warning: unused variable 'n1' [-Wunused-variable]
  295 |     int64_t n1 = tensor->ne[1];
      |             ^~
sd/ggml_extend.hpp:296:13: warning: unused variable 'n2' [-Wunused-variable]
  296 |     int64_t n2 = tensor->ne[2];
      |             ^~
sd/ggml_extend.hpp:297:13: warning: unused variable 'n3' [-Wunused-variable]
  297 |     int64_t n3 = tensor->ne[3];
      |             ^~
sd/ggml_extend.hpp:339:13: warning: variable 'nelements' set but not used [-Wunused-but-set-variable]
  339 |     int32_t nelements = 1;
      |             ^
sd/ggml_extend.hpp:348:18: warning: unused variable 'bpe' [-Wunused-variable]
  348 |     const size_t bpe    = ggml_type_size(ggml_type(ttype));
      |                  ^~~
sd/ggml_extend.hpp:388:39: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  388 |         LOG_ERROR("ggml_init() failed");
      |                                       ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:1:
sd/ggml_extend.hpp:894:39: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  894 |         LOG_ERROR("ggml_init() failed");
      |                                       ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:1:
sd/ggml_extend.hpp:1154:13: warning: unused variable 'OC' [-Wunused-variable]
 1154 |     int64_t OC = w->ne[3] / IC;
      |             ^~
sd/ggml_extend.hpp:1155:13: warning: unused variable 'N' [-Wunused-variable]
 1155 |     int64_t N  = x->ne[3] / IC;
      |             ^
In file included from sd/stable-diffusion.cpp:10:
sd/cache_dit.hpp:76:13: warning: unused variable 'order' [-Wunused-variable]
   76 |         int order = n_derivatives + 1;
      |             ^~~~~
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:4:
sd/clip.hpp:171:58: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  171 |             LOG_DEBUG("trigger word img already in vocab");
      |                                                          ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:4:
sd/clip.hpp:173:58: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  173 |             LOG_DEBUG("trigger word img not in vocab yet");
      |                                                          ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:4:
sd/clip.hpp:765:48: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  765 |                 LOG_DEBUG("identity projection");
      |                                                ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:4:
sd/clip.hpp:949:16: warning: unused variable 'N' [-Wunused-variable]
  949 |         size_t N       = input_ids->ne[1];
      |                ^
sd/clip.hpp:950:16: warning: unused variable 'n_token' [-Wunused-variable]
  950 |         size_t n_token = input_ids->ne[0];
      |                ^~~~~~~
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:5:
sd/llm.hpp:678:21: warning: unused variable 'n_token' [-Wunused-variable]
  678 |             int64_t n_token = x->ne[1];
      |                     ^~~~~~~
sd/llm.hpp:679:21: warning: unused variable 'N' [-Wunused-variable]
  679 |             int64_t N       = x->ne[2];
      |                     ^
sd/llm.hpp:1144:71: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1144 |                 LOG_WARN("no vision weights detected, vision disabled");
      |                                                                       ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:5:
sd/llm.hpp:1148:46: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1148 |                 LOG_DEBUG("enable llm vision");
      |                                              ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:5:
sd/llm.hpp:1150:62: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1150 |                     LOG_DEBUG("llama.cpp style vision weight");
      |                                                              ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:5:
sd/llm.hpp:1261:21: warning: unused variable 'llm_grid_h' [-Wunused-variable]
 1261 |             int64_t llm_grid_h = grid_h / params.vision.spatial_merge_size;
      |                     ^~~~~~~~~~
sd/llm.hpp:1262:21: warning: unused variable 'llm_grid_w' [-Wunused-variable]
 1262 |             int64_t llm_grid_w = grid_w / params.vision.spatial_merge_size;
      |                     ^~~~~~~~~~
sd/llm.hpp:1299:17: warning: unused variable 'grid_t' [-Wunused-variable]
 1299 |             int grid_t                 = 1;
      |                 ^~~~~~
sd/llm.hpp:1355:17: warning: unused variable 'seq_window_size' [-Wunused-variable]
 1355 |             int seq_window_size = (vit_merger_window_size * params.vision.spatial_merge_size) * (vit_merger_window_size * params.vision.spatial_merge_size);
      |                 ^~~~~~~~~~~~~~~
sd/llm.hpp:1719:66: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1719 |                 LOG_ERROR("load tensors from model loader failed");
      |                                                                  ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:5:
sd/llm.hpp:1723:40: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1723 |             LOG_INFO("llm model loaded");
      |                                        ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:5:
sd/llm.hpp:1547:37: warning: unused variable 'weights' [-Wunused-variable]
 1547 |                 std::vector<float>& weights = std::get<1>(tokens_and_weights);
      |                                     ^~~~~~~
sd/llm.hpp:1595:37: warning: unused variable 'weights' [-Wunused-variable]
 1595 |                 std::vector<float>& weights = std::get<1>(tokens_and_weights);
      |                                     ^~~~~~~
sd/llm.hpp:1626:37: warning: unused variable 'weights' [-Wunused-variable]
 1626 |                 std::vector<float>& weights = std::get<1>(tokens_and_weights);
      |                                     ^~~~~~~
sd/llm.hpp:1657:37: warning: unused variable 'weights' [-Wunused-variable]
 1657 |                 std::vector<float>& weights = std::get<1>(tokens_and_weights);
      |                                     ^~~~~~~
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:6:
sd/t5.hpp:789:16: warning: unused variable 'N' [-Wunused-variable]
  789 |         size_t N       = input_ids->ne[1];
      |                ^
sd/t5.hpp:790:16: warning: unused variable 'n_token' [-Wunused-variable]
  790 |         size_t n_token = input_ids->ne[0];
      |                ^~~~~~~
sd/t5.hpp:1039:62: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1039 |             LOG_ERROR("load tensors from model loader failed");
      |                                                              ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:6:
sd/t5.hpp:1043:35: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1043 |         LOG_INFO("t5 model loaded");
      |                                   ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
In file included from sd/conditioner.hpp:6:
sd/t5.hpp:980:33: warning: unused variable 'weights' [-Wunused-variable]
  980 |             std::vector<float>& weights = std::get<1>(tokens_and_weights);
      |                                 ^~~~~~~
In file included from sd/stable-diffusion.cpp:11:
sd/conditioner.hpp:722:92: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  722 |             LOG_WARN("IMPORTANT NOTICE: No text encoders provided, cannot process prompts!");
      |                                                                                            ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
sd/conditioner.hpp:1140:92: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1140 |             LOG_WARN("IMPORTANT NOTICE: No text encoders provided, cannot process prompts!");
      |                                                                                            ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
sd/conditioner.hpp:1147:90: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1147 |             LOG_WARN("clip_l text encoder not found! Prompt adherence might be degraded.");
      |                                                                                          ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
sd/conditioner.hpp:1152:89: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1152 |             LOG_WARN("t5xxl text encoder not found! Prompt adherence might be degraded.");
      |                                                                                         ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
sd/conditioner.hpp:1286:57: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1286 |                     LOG_INFO("text_encode_clip starting");
      |                                                         ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
sd/conditioner.hpp:1315:51: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1315 |                 LOG_INFO("text_encode_t5 starting");
      |                                                   ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
sd/conditioner.hpp:1416:92: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1416 |             LOG_WARN("IMPORTANT NOTICE: No text encoders provided, cannot process prompts!");
      |                                                                                            ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:11:
sd/conditioner.hpp:1470:14: warning: unused variable 'on_new_token_cb' [-Wunused-variable]
 1470 |         auto on_new_token_cb = [&](std::string& str, std::vector<int32_t>& bpe_tokens) -> bool {
      |              ^~~~~~~~~~~~~~~
sd/conditioner.hpp:1526:29: warning: unused variable 'pooled' [-Wunused-variable]
 1526 |         struct ggml_tensor* pooled              = nullptr;
      |                             ^~~~~~
sd/conditioner.hpp:1721:49: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1721 |             LOG_INFO("QwenImageEditPlusPipeline");
      |                                                 ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:12:
In file included from sd/control.hpp:4:
sd/common.hpp:311:17: warning: unused variable 'n' [-Wunused-variable]
  311 |         int64_t n         = x->ne[2];
      |                 ^
sd/common.hpp:312:17: warning: unused variable 'n_token' [-Wunused-variable]
  312 |         int64_t n_token   = x->ne[1];
      |                 ^~~~~~~
sd/common.hpp:313:17: warning: unused variable 'n_context' [-Wunused-variable]
  313 |         int64_t n_context = context->ne[1];
      |                 ^~~~~~~~~
sd/common.hpp:314:17: warning: unused variable 'inner_dim' [-Wunused-variable]
  314 |         int64_t inner_dim = d_head * n_head;
      |                 ^~~~~~~~~
sd/common.hpp:558:25: warning: 'VideoResBlock::forward' hides overloaded virtual function [-Woverloaded-virtual]
  558 |     struct ggml_tensor* forward(GGMLRunnerContext* ctx,
      |                         ^
sd/common.hpp:124:33: note: hidden overloaded virtual function 'ResBlock::forward' declared here: different number of parameters (3 vs 4)
  124 |     virtual struct ggml_tensor* forward(GGMLRunnerContext* ctx, struct ggml_tensor* x, struct ggml_tensor* emb = nullptr) {
      |                                 ^
In file included from sd/stable-diffusion.cpp:12:
sd/control.hpp:269:17: warning: unused variable 'mult' [-Wunused-variable]
  269 |             int mult = channel_mult[i];
      |                 ^~~~
sd/control.hpp:457:74: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  457 |             LOG_ERROR("load control net tensors from model loader failed");
      |                                                                          ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:12:
sd/control.hpp:461:44: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  461 |         LOG_INFO("control net model loaded");
      |                                            ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:83:65: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   83 |         LOG_ERROR("Linear Interpolation Failed: length mismatch");
      |                                                                 ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:174:67: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  174 |             LOG_WARN("AYS_SCHEDULER not designed for SD2.X models");
      |                                                                   ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:177:62: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  177 |             LOG_INFO("AYS_SCHEDULER using SD1.5 noise levels");
      |                                                              ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:180:61: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  180 |             LOG_INFO("AYS_SCHEDULER using SDXL noise levels");
      |                                                             ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:183:60: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  183 |             LOG_INFO("AYS_SCHEDULER using SVD noise levels");
      |                                                            ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:186:76: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  186 |             LOG_ERROR("Version not compatible with AYS_SCHEDULER scheduler");
      |                                                                            ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:403:62: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  403 |                 LOG_INFO("get_sigmas with discrete scheduler");
      |                                                              ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:407:60: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  407 |                 LOG_INFO("get_sigmas with Karras scheduler");
      |                                                            ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:411:60: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  411 |                 LOG_INFO("get_sigmas exponential scheduler");
      |                                                            ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:415:70: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  415 |                 LOG_INFO("get_sigmas with Align-Your-Steps scheduler");
      |                                                                      ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:419:58: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  419 |                 LOG_INFO("get_sigmas with GITS scheduler");
      |                                                          ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:423:65: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  423 |                 LOG_INFO("get_sigmas with SGM Uniform scheduler");
      |                                                                 ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:427:60: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  427 |                 LOG_INFO("get_sigmas with Simple scheduler");
      |                                                            ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:431:64: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  431 |                 LOG_INFO("get_sigmas with SmoothStep scheduler");
      |                                                                ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:435:64: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  435 |                 LOG_INFO("get_sigmas with KL Optimal scheduler");
      |                                                                ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:439:57: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  439 |                 LOG_INFO("get_sigmas with LCM scheduler");
      |                                                         ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:443:72: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  443 |                 LOG_INFO("get_sigmas with discrete scheduler (default)");
      |                                                                        ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:13:
sd/denoiser.hpp:849:28: warning: unused variable 'vec_d2' [-Wunused-variable]
  849 |                     float* vec_d2 = (float*)d->data;
      |                            ^~~~~~
sd/denoiser.hpp:1206:31: warning: unused variable 'h_n_2' [-Wunused-variable]
 1206 |                         float h_n_2        = (i > 1) ? (sigmas[i - 1] - sigmas[i - 2]) : h_n_1;
      |                               ^~~~~
sd/denoiser.hpp:1217:31: warning: unused variable 'h_n_3' [-Wunused-variable]
 1217 |                         float h_n_3        = (i > 2) ? (sigmas[i - 2] - sigmas[i - 3]) : h_n_2;
      |                               ^~~~~
sd/denoiser.hpp:1241:33: warning: unused variable 'd' [-Wunused-variable]
 1241 |             struct ggml_tensor* d     = ggml_dup_tensor(work_ctx, x);
      |                                 ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:4:
sd/flux.hpp:298:23: warning: unused variable 'double_blocks_count' [-Wunused-variable]
  298 |             const int double_blocks_count = 19;
      |                       ^~~~~~~~~~~~~~~~~~~
sd/flux.hpp:933:25: warning: unused variable 'mod_index_length' [-Wunused-variable]
  933 |                 int64_t mod_index_length = 344;
      |                         ^~~~~~~~~~~~~~~~
sd/flux.hpp:1296:52: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1296 |                     LOG_DEBUG("using x0 prediction");
      |                                                    ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:4:
sd/flux.hpp:1300:52: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1300 |                     LOG_DEBUG("using patch size 32");
      |                                                    ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:4:
sd/flux.hpp:1340:53: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1340 |                 LOG_DEBUG("using fake x2 patch size");
      |                                                     ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:4:
sd/flux.hpp:1355:60: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1355 |                 LOG_INFO("Using pruned modulation (Chroma)");
      |                                                            ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:4:
sd/flux.hpp:1625:66: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1625 |                 LOG_ERROR("load tensors from model loader failed");
      |                                                                  ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:4:
sd/flux.hpp:1629:41: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1629 |             LOG_INFO("flux model loaded");
      |                                         ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:5:
sd/mmdit.hpp:681:17: warning: unused variable 'default_out_channels' [-Wunused-variable]
  681 |         int64_t default_out_channels = in_channels;
      |                 ^~~~~~~~~~~~~~~~~~~~
sd/mmdit.hpp:965:66: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  965 |                 LOG_ERROR("load tensors from model loader failed");
      |                                                                  ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:5:
sd/mmdit.hpp:969:42: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  969 |             LOG_INFO("mmdit model loaded");
      |                                          ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:5:
sd/mmdit.hpp:947:19: warning: unused variable 'model_data_type' [-Wunused-variable]
  947 |         ggml_type model_data_type          = GGML_TYPE_F16;
      |                   ^~~~~~~~~~~~~~~
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:6:
sd/qwen_image.hpp:512:21: warning: unused variable 'C' [-Wunused-variable]
  512 |             int64_t C = x->ne[2];
      |                     ^
sd/qwen_image.hpp:513:21: warning: unused variable 'N' [-Wunused-variable]
  513 |             int64_t N = x->ne[3];
      |                     ^
sd/qwen_image.hpp:585:43: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  585 |                 LOG_INFO("use zero_cond_t");
      |                                           ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:6:
sd/qwen_image.hpp:759:66: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  759 |                 LOG_ERROR("load tensors from model loader failed");
      |                                                                  ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:6:
sd/qwen_image.hpp:763:47: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  763 |             LOG_INFO("qwen_image model loaded");
      |                                               ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:7:
sd/unet.hpp:64:25: warning: 'SpatialVideoTransformer::forward' hides overloaded virtual function [-Woverloaded-virtual]
   64 |     struct ggml_tensor* forward(GGMLRunnerContext* ctx,
      |                         ^
sd/common.hpp:459:33: note: hidden overloaded virtual function 'SpatialTransformer::forward' declared here: different number of parameters (3 vs 4)
  459 |     virtual struct ggml_tensor* forward(GGMLRunnerContext* ctx,
      |                                 ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:7:
sd/unet.hpp:44:17: warning: unused variable 'time_mix_inner_dim' [-Wunused-variable]
   44 |         int64_t time_mix_inner_dim = time_mix_d_head * n_time_mix_heads;  // equal to inner_dim
      |                 ^~~~~~~~~~~~~~~~~~
sd/unet.hpp:496:17: warning: unused variable 'mult' [-Wunused-variable]
  496 |             int mult = channel_mult[i];
      |                 ^~~~
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:8:
sd/wan.hpp:1282:70: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1282 |                     LOG_ERROR("load tensors from model loader failed");
      |                                                                      ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:8:
sd/wan.hpp:1286:44: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1286 |                 LOG_INFO("vae model loaded");
      |                                            ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:8:
sd/wan.hpp:1264:23: warning: unused variable 'model_data_type' [-Wunused-variable]
 1264 |             ggml_type model_data_type         = GGML_TYPE_F16;
      |                       ^~~~~~~~~~~~~~~
sd/wan.hpp:1359:37: warning: 'WAN::WanCrossAttention::forward' hides overloaded virtual function [-Woverloaded-virtual]
 1359 |         virtual struct ggml_tensor* forward(GGMLRunnerContext* ctx,
      |                                     ^
sd/wan.hpp:1318:37: note: hidden overloaded virtual function 'WAN::WanSelfAttention::forward' declared here: type mismatch at 4th parameter ('struct ggml_tensor *' vs 'int64_t' (aka 'long'))
 1318 |         virtual struct ggml_tensor* forward(GGMLRunnerContext* ctx,
      |                                     ^
sd/wan.hpp:1380:21: warning: unused variable 'N' [-Wunused-variable]
 1380 |             int64_t N       = x->ne[2];
      |                     ^
sd/wan.hpp:1381:21: warning: unused variable 'n_token' [-Wunused-variable]
 1381 |             int64_t n_token = x->ne[1];
      |                     ^~~~~~~
sd/wan.hpp:1441:21: warning: unused variable 'n_token' [-Wunused-variable]
 1441 |             int64_t n_token         = x->ne[1];
      |                     ^~~~~~~
sd/wan.hpp:1609:47: warning: 'WAN::VaceWanAttentionBlock::forward' hides overloaded virtual function [-Woverloaded-virtual]
 1609 |         std::pair<ggml_tensor*, ggml_tensor*> forward(GGMLRunnerContext* ctx,
      |                                               ^
sd/wan.hpp:1534:37: note: hidden overloaded virtual function 'WAN::WanAttentionBlock::forward' declared here: different number of parameters (6 vs 7)
 1534 |         virtual struct ggml_tensor* forward(GGMLRunnerContext* ctx,
      |                                     ^
sd/wan.hpp:1982:21: warning: unused variable 'C' [-Wunused-variable]
 1982 |             int64_t C = x->ne[3];
      |                     ^
sd/wan.hpp:2283:66: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2283 |                 LOG_ERROR("load tensors from model loader failed");
      |                                                                  ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:8:
sd/wan.hpp:2287:40: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2287 |             LOG_INFO("wan model loaded");
      |                                        ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:9:
sd/z_image.hpp:50:21: warning: unused variable 'n_token' [-Wunused-variable]
   50 |             int64_t n_token = x->ne[1];
      |                     ^~~~~~~
sd/z_image.hpp:51:21: warning: unused variable 'N' [-Wunused-variable]
   51 |             int64_t N       = x->ne[2];
      |                     ^
sd/z_image.hpp:495:21: warning: unused variable 'C' [-Wunused-variable]
  495 |             int64_t C = x->ne[2];
      |                     ^
sd/z_image.hpp:496:21: warning: unused variable 'N' [-Wunused-variable]
  496 |             int64_t N = x->ne[3];
      |                     ^
sd/z_image.hpp:688:66: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  688 |                 LOG_ERROR("load tensors from model loader failed");
      |                                                                  ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:14:
In file included from sd/diffusion_model.hpp:9:
sd/z_image.hpp:692:44: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  692 |             LOG_INFO("z_image model loaded");
      |                                            ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:16:
sd/esrgan.hpp:335:69: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  335 |             LOG_ERROR("load esrgan tensors from model loader failed");
      |                                                                     ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:17:
sd/lora.hpp:93:41: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   93 |         LOG_DEBUG("finished loaded lora");
      |                                         ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:18:
sd/pmid.hpp:628:59: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  628 |         LOG_DEBUG("finished loading PhotoMaker ID Embeds ");
      |                                                           ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:19:
sd/tae.hpp:69:29: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   69 |             LOG_DEBUG("skip");
      |                             ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:19:
sd/tae.hpp:588:66: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  588 |             LOG_ERROR("load tae tensors from model loader failed");
      |                                                                  ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:19:
sd/tae.hpp:592:38: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  592 |         LOG_INFO("taesd model loaded");
      |                                      ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:19:
sd/tae.hpp:661:66: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  661 |             LOG_ERROR("load tae tensors from model loader failed");
      |                                                                  ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:19:
sd/tae.hpp:665:38: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  665 |         LOG_INFO("taehv model loaded");
      |                                      ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:23:
sd/latent-preview.h:167:12: warning: unused variable 'buffer_head' [-Wunused-variable]
  167 |     size_t buffer_head = 0;
      |            ^~~~~~~~~~~
sd/stable-diffusion.cpp:324:52: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  324 |             LOG_DEBUG("Falling back to CPU backend");
      |                                                    ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:534:63: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  534 |             LOG_INFO("Using circular padding for convolutions");
      |                                                               ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:542:51: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  542 |                 LOG_INFO("CLIP: Using CPU backend");
      |                                                   ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:571:73: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  571 |                             "--chroma-disable-dit-mask as a workaround.");
      |                                                                         ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:686:74: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  686 |                     LOG_INFO("Using Conv2d direct in the diffusion model");
      |                                                                          ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:692:72: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  692 |                 LOG_INFO("Using flash attention in the diffusion model");
      |                                                                        ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:715:62: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  715 |                 LOG_INFO("VAE Autoencoder: Using CPU backend");
      |                                                              ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:747:72: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  747 |                         LOG_INFO("Using Conv2d direct in the vae model");
      |                                                                        ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:784:68: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  784 |                     LOG_INFO("Using Conv2d direct in the tae model");
      |                                                                    ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:792:62: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  792 |                     LOG_DEBUG("ControlNet: Using CPU backend");
      |                                                              ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:802:70: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  802 |                     LOG_INFO("Using Conv2d direct in the control net");
      |                                                                      ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:814:54: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  814 |                 LOG_INFO("using PhotoMaker Version 2");
      |                                                      ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:843:76: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  843 |                     LOG_ERROR(" pmid model params buffer allocation failed");
      |                                                                            ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:875:36: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  875 |         LOG_DEBUG("loading weights");
      |                                    ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:905:62: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  905 |             LOG_ERROR("load tensors from model loader failed");
      |                                                              ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:910:41: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  910 |         LOG_DEBUG("finished loaded file");
      |                                         ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1041:62: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1041 |                     LOG_INFO("running in eps-prediction mode");
      |                                                              ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1044:60: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1044 |                     LOG_INFO("running in v-prediction mode");
      |                                                            ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1048:64: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1048 |                     LOG_INFO("running in v-prediction EDM mode");
      |                                                                ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1052:52: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1052 |                     LOG_INFO("running in FLOW mode");
      |                                                    ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1057:57: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1057 |                     LOG_INFO("running in Flux FLOW mode");
      |                                                         ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1062:58: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1062 |                     LOG_INFO("running in Flux2 FLOW mode");
      |                                                          ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1167:42: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1167 |         LOG_INFO("apply lora immediately");
      |                                          ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1201:41: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1201 |         LOG_INFO("apply lora at runtime");
      |                                         ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1306:47: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1306 |             LOG_INFO("cond_stage_lora_models:");
      |                                               ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1313:46: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1313 |             LOG_INFO("diffusion_lora_models:");
      |                                              ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1320:48: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1320 |             LOG_INFO("first_stage_lora_models:");
      |                                                ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1404:97: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1404 |                     LOG_WARN("Provided PhotoMaker images, but NO valid ID embeds file for PM v2");
      |                                                                                                 ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1405:51: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1405 |                     LOG_WARN("Turn off PhotoMaker");
      |                                                   ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1410:55: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1410 |                         LOG_WARN("Turn off PhotoMaker");
      |                                                       ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1426:82: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1426 |                 LOG_WARN("Provided PhotoMaker model file, but NO input ID images");
      |                                                                                  ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1427:47: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1427 |                 LOG_WARN("Turn off PhotoMaker");
      |                                               ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1601:80: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1601 |                     LOG_WARN("No latent to RGB projection known for this model");
      |                                                                                ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1618:80: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1618 |                     LOG_WARN("No latent to RGB projection known for this model");
      |                                                                                ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1633:80: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1633 |                     LOG_WARN("No latent to RGB projection known for this model");
      |                                                                                ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1639:76: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1639 |                 LOG_WARN("No latent to RGB projection known for this model");
      |                                                                            ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1681:57: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1681 |                     LOG_WARN("TAE not found for preview");
      |                                                         ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1748:76: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1748 |             LOG_WARN("timestep shifting is only supported for SDXL models!");
      |                                                                            ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1759:117: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1759 |                 LOG_WARN("unconditioned mode, images won't follow the prompt (use cfg-scale=1 for distilled models)");
      |                                                                                                                     ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1761:90: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1761 |                 LOG_WARN("cfg value out of expected range may produce unexpected results");
      |                                                                                          ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1769:115: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1769 |             LOG_WARN("2-conditioning CFG is not supported with this model, disabling it for better performance...");
      |                                                                                                                   ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1797:89: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1797 |                     LOG_WARN("EasyCache requested but not supported for this model type");
      |                                                                                         ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1812:97: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1812 |                         LOG_WARN("EasyCache requested but could not be initialized for this run");
      |                                                                                                 ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1818:105: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1818 |                     LOG_WARN("UCache requested but not supported for this model type (only UNET models)");
      |                                                                                                         ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1839:94: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1839 |                         LOG_WARN("UCache requested but could not be initialized for this run");
      |                                                                                              ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1847:106: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1847 |                     LOG_WARN("CacheDIT requested but not supported for this model type (only DiT models)");
      |                                                                                                          ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:1879:96: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1879 |                         LOG_WARN("CacheDIT requested but could not be initialized for this run");
      |                                                                                                ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:2141:58: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2141 |                     LOG_ERROR("controlnet compute failed");
      |                                                          ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:2177:63: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2177 |                     LOG_ERROR("diffusion model compute failed");
      |                                                               ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:2192:62: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2192 |                         LOG_ERROR("controlnet compute failed");
      |                                                              ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:2205:67: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2205 |                         LOG_ERROR("diffusion model compute failed");
      |                                                                   ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:2223:67: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2223 |                         LOG_ERROR("diffusion model compute failed");
      |                                                                   ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:2245:67: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2245 |                         LOG_ERROR("diffusion model compute failed");
      |                                                                   ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:2430:56: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2430 |             LOG_ERROR("Diffusion model sampling failed");
      |                                                        ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:2462:70: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2462 |                 LOG_INFO("EasyCache completed without skipping steps");
      |                                                                      ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:2482:67: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2482 |                 LOG_INFO("UCache completed without skipping steps");
      |                                                                   ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:2504:69: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2504 |                 LOG_INFO("CacheDIT completed without skipping steps");
      |                                                                     ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:2933:90: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 2933 |                     LOG_WARN("VAE direct decode failed, falling back to tiled VAE decode");
      |                                                                                          ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:597:22: warning: unused variable 'is_chroma' [-Wunused-variable]
  597 |                 bool is_chroma   = false;
      |                      ^~~~~~~~~
sd/stable-diffusion.cpp:2376:71: warning: lambda capture 'ts' is not used [-Wunused-lambda-capture]
 2376 |                 effective_denoise = [&, grid, gauss_mask, tile_input, ts, latent_w, latent_h, C, N, buf_size,
      |                                                                     ~~^~
sd/stable-diffusion.cpp:3772:39: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 3772 |         LOG_ERROR("ggml_init() failed");
      |                                       ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:3823:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 3823 |         LOG_INFO("IMG2IMG");
      |                           ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:3963:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 3963 |         LOG_INFO("TXT2IMG");
      |                           ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:3965:105: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 3965 |             LOG_WARN("This is an inpainting model, this should only be used in img2img mode with a mask");
      |                                                                                                         ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:3979:91: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 3979 |         LOG_WARN("This model needs at least one reference image; using an empty reference");
      |                                                                                           ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:3987:29: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 3987 |         LOG_INFO("EDIT mode");
      |                             ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:3994:47: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 3994 |             LOG_DEBUG("auto resize ref images");
      |                                               ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:4167:39: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 4167 |         LOG_ERROR("ggml_init() failed");
      |                                       ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:4194:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 4194 |         LOG_INFO("IMG2VID");
      |                           ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:4256:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 4256 |         LOG_INFO("IMG2VID");
      |                           ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/stable-diffusion.cpp:4287:24: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 4287 |         LOG_INFO("VACE");
      |                        ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Linear' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Linear, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/ggml_extend.hpp:2649:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Linear, void>' requested here
 2649 |             blocks[in_proj_name] = std::shared_ptr<GGMLBlock>(new Linear(embed_dim, embed_dim * 3, qkv_proj_bias));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Linear' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Linear *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Linear *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Linear, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/ggml_extend.hpp:2649:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Linear, void>' requested here
 2649 |             blocks[in_proj_name] = std::shared_ptr<GGMLBlock>(new Linear(embed_dim, embed_dim * 3, qkv_proj_bias));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'MultiheadAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<MultiheadAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<MultiheadAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<MultiheadAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:505:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<MultiheadAttention, void>' requested here
  505 |         blocks["self_attn"] = std::shared_ptr<GGMLBlock>(new MultiheadAttention(d_model, n_head, true, true, proj_in));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'MultiheadAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<MultiheadAttention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<MultiheadAttention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<MultiheadAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<MultiheadAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<MultiheadAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:505:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<MultiheadAttention, void>' requested here
  505 |         blocks["self_attn"] = std::shared_ptr<GGMLBlock>(new MultiheadAttention(d_model, n_head, true, true, proj_in));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'LayerNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LayerNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LayerNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LayerNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:507:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LayerNorm, void>' requested here
  507 |         blocks["layer_norm1"] = std::shared_ptr<GGMLBlock>(new LayerNorm(d_model));
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'LayerNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<LayerNorm *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<LayerNorm *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LayerNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LayerNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LayerNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:507:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LayerNorm, void>' requested here
  507 |         blocks["layer_norm1"] = std::shared_ptr<GGMLBlock>(new LayerNorm(d_model));
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'CLIPMLP' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPMLP *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPMLP *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPMLP, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:510:25: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPMLP, void>' requested here
  510 |         blocks["mlp"] = std::shared_ptr<GGMLBlock>(new CLIPMLP(d_model, intermediate_size));
      |                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'CLIPMLP' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPMLP *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPMLP *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPMLP *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPMLP *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPMLP, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:510:25: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPMLP, void>' requested here
  510 |         blocks["mlp"] = std::shared_ptr<GGMLBlock>(new CLIPMLP(d_model, intermediate_size));
      |                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'CLIPLayer' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPLayer *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPLayer *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPLayer, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:539:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPLayer, void>' requested here
  539 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new CLIPLayer(d_model, n_head, intermediate_size, proj_in));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'CLIPLayer' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPLayer *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPLayer *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPLayer *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPLayer *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPLayer, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:539:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPLayer, void>' requested here
  539 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new CLIPLayer(d_model, n_head, intermediate_size, proj_in));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'CLIPEmbeddings' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPEmbeddings *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPEmbeddings *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPEmbeddings, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:731:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPEmbeddings, void>' requested here
  731 |         blocks["embeddings"]       = std::shared_ptr<GGMLBlock>(new CLIPEmbeddings(hidden_size, vocab_size, n_token, force_clip_f32));
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'CLIPEmbeddings' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPEmbeddings *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPEmbeddings *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPEmbeddings *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPEmbeddings *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPEmbeddings, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:731:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPEmbeddings, void>' requested here
  731 |         blocks["embeddings"]       = std::shared_ptr<GGMLBlock>(new CLIPEmbeddings(hidden_size, vocab_size, n_token, force_clip_f32));
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'CLIPEncoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPEncoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPEncoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPEncoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:732:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPEncoder, void>' requested here
  732 |         blocks["encoder"]          = std::shared_ptr<GGMLBlock>(new CLIPEncoder(n_layer, hidden_size, n_head, intermediate_size, proj_in));
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'CLIPEncoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPEncoder *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPEncoder *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPEncoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPEncoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPEncoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:732:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPEncoder, void>' requested here
  732 |         blocks["encoder"]          = std::shared_ptr<GGMLBlock>(new CLIPEncoder(n_layer, hidden_size, n_head, intermediate_size, proj_in));
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'CLIPVisionEmbeddings' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPVisionEmbeddings *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPVisionEmbeddings *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPVisionEmbeddings, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:800:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPVisionEmbeddings, void>' requested here
  800 |         blocks["embeddings"]     = std::shared_ptr<GGMLBlock>(new CLIPVisionEmbeddings(hidden_size, num_channels, patch_size, image_size));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'CLIPVisionEmbeddings' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPVisionEmbeddings *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPVisionEmbeddings *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPVisionEmbeddings *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPVisionEmbeddings *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPVisionEmbeddings, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:800:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPVisionEmbeddings, void>' requested here
  800 |         blocks["embeddings"]     = std::shared_ptr<GGMLBlock>(new CLIPVisionEmbeddings(hidden_size, num_channels, patch_size, image_size));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'CLIPVisionModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPVisionModel *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPVisionModel *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPVisionModel, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:884:39: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPVisionModel, void>' requested here
  884 |         blocks["vision_model"]      = std::shared_ptr<GGMLBlock>(new CLIPVisionModel(version, proj_in));
      |                                       ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'CLIPVisionModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPVisionModel *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPVisionModel *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPVisionModel *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPVisionModel *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPVisionModel, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:884:39: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPVisionModel, void>' requested here
  884 |         blocks["vision_model"]      = std::shared_ptr<GGMLBlock>(new CLIPVisionModel(version, proj_in));
      |                                       ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'CLIPProjection' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPProjection *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPProjection *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPProjection, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:885:39: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPProjection, void>' requested here
  885 |         blocks["visual_projection"] = std::shared_ptr<GGMLBlock>(new CLIPProjection(hidden_size, projection_dim, transpose_proj_w));
      |                                       ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'CLIPProjection' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPProjection *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<CLIPProjection *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPProjection *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CLIPProjection *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CLIPProjection, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/clip.hpp:885:39: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CLIPProjection, void>' requested here
  885 |         blocks["visual_projection"] = std::shared_ptr<GGMLBlock>(new CLIPProjection(hidden_size, projection_dim, transpose_proj_w));
      |                                       ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Conv2d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv2d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv2d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Conv2d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:561:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Conv2d, void>' requested here
  561 |                 blocks["proj.0"] = std::shared_ptr<GGMLBlock>(new Conv2d(in_channels,
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Conv2d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Conv2d *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Conv2d *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv2d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv2d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Conv2d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:561:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Conv2d, void>' requested here
  561 |                 blocks["proj.0"] = std::shared_ptr<GGMLBlock>(new Conv2d(in_channels,
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Conv3d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv3d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv3d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Conv3d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:577:57: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Conv3d, void>' requested here
  577 |                 blocks["proj"]                        = std::shared_ptr<GGMLBlock>(new Conv3d(in_channels,
      |                                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Conv3d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Conv3d *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Conv3d *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv3d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv3d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Conv3d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:577:57: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Conv3d, void>' requested here
  577 |                 blocks["proj"]                        = std::shared_ptr<GGMLBlock>(new Conv3d(in_channels,
      |                                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'RMSNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RMSNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RMSNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<RMSNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:630:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<RMSNorm, void>' requested here
  630 |             blocks["ln_q"]  = std::shared_ptr<GGMLBlock>(new RMSNorm(context_dim, 1e-6f));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'RMSNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<RMSNorm *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<RMSNorm *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RMSNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RMSNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<RMSNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:630:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<RMSNorm, void>' requested here
  630 |             blocks["ln_q"]  = std::shared_ptr<GGMLBlock>(new RMSNorm(context_dim, 1e-6f));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'LLM::VisionAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::VisionAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:717:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::VisionAttention, void>' requested here
  717 |             blocks["attn"]  = std::shared_ptr<GGMLBlock>(new VisionAttention(llama_cpp_style, hidden_size, num_heads));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'LLM::VisionAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::VisionAttention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::VisionAttention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::VisionAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:717:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::VisionAttention, void>' requested here
  717 |             blocks["attn"]  = std::shared_ptr<GGMLBlock>(new VisionAttention(llama_cpp_style, hidden_size, num_heads));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'LLM::MLP' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::MLP *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::MLP *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::MLP, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:718:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::MLP, void>' requested here
  718 |             blocks["mlp"]   = std::shared_ptr<GGMLBlock>(new MLP(hidden_size, intermediate_size, true));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'LLM::MLP' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::MLP *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::MLP *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::MLP *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::MLP *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::MLP, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:718:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::MLP, void>' requested here
  718 |             blocks["mlp"]   = std::shared_ptr<GGMLBlock>(new MLP(hidden_size, intermediate_size, true));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'LLM::VisionPatchEmbed' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionPatchEmbed *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionPatchEmbed *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::VisionPatchEmbed, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:768:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::VisionPatchEmbed, void>' requested here
  768 |             blocks["patch_embed"] = std::shared_ptr<GGMLBlock>(new VisionPatchEmbed(llama_cpp_style,
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'LLM::VisionPatchEmbed' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::VisionPatchEmbed *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::VisionPatchEmbed *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionPatchEmbed *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionPatchEmbed *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::VisionPatchEmbed, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:768:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::VisionPatchEmbed, void>' requested here
  768 |             blocks["patch_embed"] = std::shared_ptr<GGMLBlock>(new VisionPatchEmbed(llama_cpp_style,
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'LLM::VisionBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::VisionBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:774:57: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::VisionBlock, void>' requested here
  774 |                 blocks["blocks." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new VisionBlock(llama_cpp_style,
      |                                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'LLM::VisionBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::VisionBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::VisionBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::VisionBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:774:57: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::VisionBlock, void>' requested here
  774 |                 blocks["blocks." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new VisionBlock(llama_cpp_style,
      |                                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'LLM::PatchMerger' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::PatchMerger *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::PatchMerger *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::PatchMerger, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:780:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::PatchMerger, void>' requested here
  780 |             blocks["merger"] = std::shared_ptr<GGMLBlock>(new PatchMerger(out_hidden_size, hidden_size, spatial_merge_size));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'LLM::PatchMerger' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::PatchMerger *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::PatchMerger *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::PatchMerger *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::PatchMerger *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::PatchMerger, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:780:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::PatchMerger, void>' requested here
  780 |             blocks["merger"] = std::shared_ptr<GGMLBlock>(new PatchMerger(out_hidden_size, hidden_size, spatial_merge_size));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:10:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/algorithm:63:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_algo.h:69:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_tempbuf.h:61:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Linear' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Linear>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Linear>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Linear, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Linear, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<const long &, long, const bool &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear, std::allocator<void>, const long &, long, const bool &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Linear>::__shared_ptr<std::allocator<void>, const long &, long, const bool &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Linear>::shared_ptr<std::allocator<void>, const long &, long, const bool &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/llm.hpp:831:37: note: in instantiation of function template specialization 'std::make_shared<Linear, const long &, long, const bool &>' requested here
  831 |             blocks["q_proj"] = std::make_shared<Linear>(params.hidden_size, num_heads * head_dim, params.qkv_bias);
      |                                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'RMSNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<RMSNorm>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<RMSNorm>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<RMSNorm, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<RMSNorm, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<int &, const float &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RMSNorm, std::allocator<void>, int &, const float &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<RMSNorm>::__shared_ptr<std::allocator<void>, int &, const float &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<RMSNorm>::shared_ptr<std::allocator<void>, int &, const float &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/llm.hpp:836:41: note: in instantiation of function template specialization 'std::make_shared<RMSNorm, int &, const float &>' requested here
  836 |                 blocks["q_norm"] = std::make_shared<RMSNorm>(head_dim, params.rms_norm_eps);
      |                                         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'LLM::Attention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<LLM::Attention>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<LLM::Attention>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<LLM::Attention, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<LLM::Attention, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<const LLM::LLMParams &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::Attention, std::allocator<void>, const LLM::LLMParams &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<LLM::Attention>::__shared_ptr<std::allocator<void>, const LLM::LLMParams &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<LLM::Attention>::shared_ptr<std::allocator<void>, const LLM::LLMParams &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/llm.hpp:897:55: note: in instantiation of function template specialization 'std::make_shared<LLM::Attention, const LLM::LLMParams &>' requested here
  897 |             blocks["self_attn"]                = std::make_shared<Attention>(params);
      |                                                       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'LLM::MLP' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<LLM::MLP>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<LLM::MLP>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<LLM::MLP, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<LLM::MLP, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<const long &, const long &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::MLP, std::allocator<void>, const long &, const long &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<LLM::MLP>::__shared_ptr<std::allocator<void>, const long &, const long &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<LLM::MLP>::shared_ptr<std::allocator<void>, const long &, const long &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/llm.hpp:898:55: note: in instantiation of function template specialization 'std::make_shared<LLM::MLP, const long &, const long &>' requested here
  898 |             blocks["mlp"]                      = std::make_shared<MLP>(params.hidden_size, params.intermediate_size);
      |                                                       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Embedding' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Embedding *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Embedding *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Embedding, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:934:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Embedding, void>' requested here
  934 |             blocks["embed_tokens"] = std::shared_ptr<GGMLBlock>(new Embedding(params.vocab_size, params.hidden_size));
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Embedding' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Embedding *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Embedding *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Embedding *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Embedding *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Embedding, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:934:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Embedding, void>' requested here
  934 |             blocks["embed_tokens"] = std::shared_ptr<GGMLBlock>(new Embedding(params.vocab_size, params.hidden_size));
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'LLM::TransformerBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::TransformerBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::TransformerBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::TransformerBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:936:57: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::TransformerBlock, void>' requested here
  936 |                 blocks["layers." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new TransformerBlock(params));
      |                                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'LLM::TransformerBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::TransformerBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::TransformerBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::TransformerBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::TransformerBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::TransformerBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:936:57: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::TransformerBlock, void>' requested here
  936 |                 blocks["layers." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new TransformerBlock(params));
      |                                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'LLM::TextModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::TextModel *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::TextModel *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::TextModel, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:1025:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::TextModel, void>' requested here
 1025 |             blocks["model"] = std::shared_ptr<GGMLBlock>(new TextModel(params));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'LLM::TextModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::TextModel *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::TextModel *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::TextModel *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::TextModel *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::TextModel, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:1025:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::TextModel, void>' requested here
 1025 |             blocks["model"] = std::shared_ptr<GGMLBlock>(new TextModel(params));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'LLM::VisionModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionModel *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionModel *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::VisionModel, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:1027:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::VisionModel, void>' requested here
 1027 |                 blocks["visual"] = std::shared_ptr<GGMLBlock>(new VisionModel(llama_cpp_style,
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'LLM::VisionModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::VisionModel *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<LLM::VisionModel *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionModel *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLM::VisionModel *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<LLM::VisionModel, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/llm.hpp:1027:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<LLM::VisionModel, void>' requested here
 1027 |                 blocks["visual"] = std::shared_ptr<GGMLBlock>(new VisionModel(llama_cpp_style,
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'T5DenseGatedActDense' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5DenseGatedActDense *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5DenseGatedActDense *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5DenseGatedActDense, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:532:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5DenseGatedActDense, void>' requested here
  532 |         blocks["DenseReluDense"] = std::shared_ptr<GGMLBlock>(new T5DenseGatedActDense(model_dim, ff_dim));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'T5DenseGatedActDense' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<T5DenseGatedActDense *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<T5DenseGatedActDense *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5DenseGatedActDense *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5DenseGatedActDense *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5DenseGatedActDense, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:532:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5DenseGatedActDense, void>' requested here
  532 |         blocks["DenseReluDense"] = std::shared_ptr<GGMLBlock>(new T5DenseGatedActDense(model_dim, ff_dim));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'T5LayerNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5LayerNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:533:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5LayerNorm, void>' requested here
  533 |         blocks["layer_norm"]     = std::shared_ptr<GGMLBlock>(new T5LayerNorm(model_dim));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'T5LayerNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<T5LayerNorm *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<T5LayerNorm *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5LayerNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:533:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5LayerNorm, void>' requested here
  533 |         blocks["layer_norm"]     = std::shared_ptr<GGMLBlock>(new T5LayerNorm(model_dim));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'T5Attention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Attention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Attention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5Attention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:630:35: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5Attention, void>' requested here
  630 |         blocks["SelfAttention"] = std::shared_ptr<GGMLBlock>(new T5Attention(model_dim, inner_dim, num_heads, using_relative_attention_bias));
      |                                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'T5Attention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<T5Attention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<T5Attention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Attention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Attention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5Attention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:630:35: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5Attention, void>' requested here
  630 |         blocks["SelfAttention"] = std::shared_ptr<GGMLBlock>(new T5Attention(model_dim, inner_dim, num_heads, using_relative_attention_bias));
      |                                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'T5LayerSelfAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerSelfAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerSelfAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5LayerSelfAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:656:29: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5LayerSelfAttention, void>' requested here
  656 |         blocks["layer.0"] = std::shared_ptr<GGMLBlock>(new T5LayerSelfAttention(model_dim, inner_dim, ff_dim, num_heads, using_relative_attention_bias));
      |                             ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'T5LayerSelfAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<T5LayerSelfAttention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<T5LayerSelfAttention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerSelfAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerSelfAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5LayerSelfAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:656:29: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5LayerSelfAttention, void>' requested here
  656 |         blocks["layer.0"] = std::shared_ptr<GGMLBlock>(new T5LayerSelfAttention(model_dim, inner_dim, ff_dim, num_heads, using_relative_attention_bias));
      |                             ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'T5LayerFF' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerFF *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerFF *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5LayerFF, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:657:29: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5LayerFF, void>' requested here
  657 |         blocks["layer.1"] = std::shared_ptr<GGMLBlock>(new T5LayerFF(model_dim, ff_dim));
      |                             ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'T5LayerFF' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<T5LayerFF *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<T5LayerFF *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerFF *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5LayerFF *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5LayerFF, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:657:29: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5LayerFF, void>' requested here
  657 |         blocks["layer.1"] = std::shared_ptr<GGMLBlock>(new T5LayerFF(model_dim, ff_dim));
      |                             ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'T5Block' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Block *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Block *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5Block, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:689:52: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5Block, void>' requested here
  689 |             blocks["block." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new T5Block(model_dim, inner_dim, ff_dim, num_heads, (!relative_attention || i == 0)));
      |                                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'T5Block' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<T5Block *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<T5Block *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Block *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Block *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5Block, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:689:52: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5Block, void>' requested here
  689 |             blocks["block." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new T5Block(model_dim, inner_dim, ff_dim, num_heads, (!relative_attention || i == 0)));
      |                                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'T5Stack' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Stack *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Stack *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5Stack, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:732:29: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5Stack, void>' requested here
  732 |         blocks["encoder"] = std::shared_ptr<GGMLBlock>(new T5Stack(params.num_layers,
      |                             ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'T5Stack' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<T5Stack *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<T5Stack *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Stack *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5Stack *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<T5Stack, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/t5.hpp:732:29: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<T5Stack, void>' requested here
  732 |         blocks["encoder"] = std::shared_ptr<GGMLBlock>(new T5Stack(params.num_layers,
      |                             ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'GroupNorm32' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GroupNorm32 *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GroupNorm32 *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<GroupNorm32, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:105:39: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<GroupNorm32, void>' requested here
  105 |         blocks["in_layers.0"]       = std::shared_ptr<GGMLBlock>(new GroupNorm32(channels));
      |                                       ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'GroupNorm32' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<GroupNorm32 *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<GroupNorm32 *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GroupNorm32 *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GroupNorm32 *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<GroupNorm32, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:105:39: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<GroupNorm32, void>' requested here
  105 |         blocks["in_layers.0"]       = std::shared_ptr<GGMLBlock>(new GroupNorm32(channels));
      |                                       ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'GELU' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GELU *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GELU *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<GELU, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:241:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<GELU, void>' requested here
  241 |             blocks["net.0"] = std::shared_ptr<GGMLBlock>(new GELU(dim, inner_dim));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'GELU' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<GELU *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<GELU *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GELU *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GELU *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<GELU, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:241:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<GELU, void>' requested here
  241 |             blocks["net.0"] = std::shared_ptr<GGMLBlock>(new GELU(dim, inner_dim));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'GEGLU' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GEGLU *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GEGLU *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<GEGLU, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:243:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<GEGLU, void>' requested here
  243 |             blocks["net.0"] = std::shared_ptr<GGMLBlock>(new GEGLU(dim, inner_dim));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'GEGLU' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<GEGLU *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<GEGLU *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GEGLU *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GEGLU *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<GEGLU, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:243:31: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<GEGLU, void>' requested here
  243 |             blocks["net.0"] = std::shared_ptr<GGMLBlock>(new GEGLU(dim, inner_dim));
      |                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'CrossAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CrossAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CrossAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CrossAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:345:27: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CrossAttention, void>' requested here
  345 |         blocks["attn1"] = std::shared_ptr<GGMLBlock>(new CrossAttention(dim, dim, n_head, d_head));
      |                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'CrossAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<CrossAttention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<CrossAttention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CrossAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CrossAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<CrossAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:345:27: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<CrossAttention, void>' requested here
  345 |         blocks["attn1"] = std::shared_ptr<GGMLBlock>(new CrossAttention(dim, dim, n_head, d_head));
      |                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'FeedForward' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FeedForward *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FeedForward *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<FeedForward, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:347:27: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<FeedForward, void>' requested here
  347 |         blocks["ff"]    = std::shared_ptr<GGMLBlock>(new FeedForward(dim, dim));
      |                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'FeedForward' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<FeedForward *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<FeedForward *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FeedForward *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FeedForward *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<FeedForward, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:347:27: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<FeedForward, void>' requested here
  347 |         blocks["ff"]    = std::shared_ptr<GGMLBlock>(new FeedForward(dim, dim));
      |                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:10:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/algorithm:63:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_algo.h:69:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_tempbuf.h:61:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Conv2d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Conv2d>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Conv2d>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Conv2d, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Conv2d, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, long &, std::pair<int, int>>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv2d, std::allocator<void>, long &, long &, std::pair<int, int>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Conv2d>::__shared_ptr<std::allocator<void>, long &, long &, std::pair<int, int>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Conv2d>::shared_ptr<std::allocator<void>, long &, long &, std::pair<int, int>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/common.hpp:415:43: note: in instantiation of function template specialization 'std::make_shared<Conv2d, long &, long &, std::pair<int, int>>' requested here
  415 |                 blocks["proj_in"]  = std::make_shared<Conv2d>(in_channels, inner_dim, std::pair{1, 1});
      |                                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'BasicTransformerBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<BasicTransformerBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<BasicTransformerBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<BasicTransformerBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:449:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<BasicTransformerBlock, void>' requested here
  449 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new BasicTransformerBlock(inner_dim, n_head, d_head, context_dim, false));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'BasicTransformerBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<BasicTransformerBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<BasicTransformerBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<BasicTransformerBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<BasicTransformerBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<BasicTransformerBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:449:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<BasicTransformerBlock, void>' requested here
  449 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new BasicTransformerBlock(inner_dim, n_head, d_head, context_dim, false));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'ResBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<ResBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:554:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<ResBlock, void>' requested here
  554 |         blocks["time_stack"] = std::shared_ptr<GGMLBlock>(new ResBlock(out_channels, emb_channels, out_channels, kernel_size, 3, true));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'ResBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<ResBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<ResBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<ResBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:554:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<ResBlock, void>' requested here
  554 |         blocks["time_stack"] = std::shared_ptr<GGMLBlock>(new ResBlock(out_channels, emb_channels, out_channels, kernel_size, 3, true));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'AlphaBlender' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AlphaBlender *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AlphaBlender *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<AlphaBlender, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:555:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<AlphaBlender, void>' requested here
  555 |         blocks["time_mixer"] = std::shared_ptr<GGMLBlock>(new AlphaBlender());
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'AlphaBlender' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<AlphaBlender *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<AlphaBlender *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AlphaBlender *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AlphaBlender *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<AlphaBlender, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/common.hpp:555:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<AlphaBlender, void>' requested here
  555 |         blocks["time_mixer"] = std::shared_ptr<GGMLBlock>(new AlphaBlender());
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'SpatialTransformer' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SpatialTransformer *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SpatialTransformer *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<SpatialTransformer, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/control.hpp:128:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<SpatialTransformer, void>' requested here
  128 |                     blocks[name]     = std::shared_ptr<GGMLBlock>(get_attention_layer(ch,
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'SpatialTransformer' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<SpatialTransformer *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<SpatialTransformer *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SpatialTransformer *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SpatialTransformer *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<SpatialTransformer, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/control.hpp:128:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<SpatialTransformer, void>' requested here
  128 |                     blocks[name]     = std::shared_ptr<GGMLBlock>(get_attention_layer(ch,
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'DownSampleBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<DownSampleBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<DownSampleBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<DownSampleBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/control.hpp:140:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<DownSampleBlock, void>' requested here
  140 |                 blocks[name]     = std::shared_ptr<GGMLBlock>(new DownSampleBlock(ch, ch));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'DownSampleBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<DownSampleBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<DownSampleBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<DownSampleBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<DownSampleBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<DownSampleBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/control.hpp:140:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<DownSampleBlock, void>' requested here
  140 |                 blocks[name]     = std::shared_ptr<GGMLBlock>(new DownSampleBlock(ch, ch));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:10:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/algorithm:63:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_algo.h:69:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_tempbuf.h:61:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'DiscreteScheduler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<DiscreteScheduler>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<DiscreteScheduler>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<DiscreteScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<DiscreteScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<DiscreteScheduler, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<DiscreteScheduler>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<DiscreteScheduler>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/denoiser.hpp:404:34: note: in instantiation of function template specialization 'std::make_shared<DiscreteScheduler>' requested here
  404 |                 scheduler = std::make_shared<DiscreteScheduler>();
      |                                  ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'KarrasScheduler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<KarrasScheduler>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<KarrasScheduler>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<KarrasScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<KarrasScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<KarrasScheduler, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<KarrasScheduler>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<KarrasScheduler>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/denoiser.hpp:408:34: note: in instantiation of function template specialization 'std::make_shared<KarrasScheduler>' requested here
  408 |                 scheduler = std::make_shared<KarrasScheduler>();
      |                                  ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'ExponentialScheduler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<ExponentialScheduler>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<ExponentialScheduler>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<ExponentialScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<ExponentialScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ExponentialScheduler, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<ExponentialScheduler>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<ExponentialScheduler>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/denoiser.hpp:412:34: note: in instantiation of function template specialization 'std::make_shared<ExponentialScheduler>' requested here
  412 |                 scheduler = std::make_shared<ExponentialScheduler>();
      |                                  ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'AYSScheduler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<AYSScheduler>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<AYSScheduler>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<AYSScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<AYSScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<SDVersion &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AYSScheduler, std::allocator<void>, SDVersion &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<AYSScheduler>::__shared_ptr<std::allocator<void>, SDVersion &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<AYSScheduler>::shared_ptr<std::allocator<void>, SDVersion &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/denoiser.hpp:416:34: note: in instantiation of function template specialization 'std::make_shared<AYSScheduler, SDVersion &>' requested here
  416 |                 scheduler = std::make_shared<AYSScheduler>(version);
      |                                  ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'GITSScheduler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<GITSScheduler>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<GITSScheduler>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<GITSScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<GITSScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GITSScheduler, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<GITSScheduler>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<GITSScheduler>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/denoiser.hpp:420:34: note: in instantiation of function template specialization 'std::make_shared<GITSScheduler>' requested here
  420 |                 scheduler = std::make_shared<GITSScheduler>();
      |                                  ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'SGMUniformScheduler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<SGMUniformScheduler>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<SGMUniformScheduler>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<SGMUniformScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<SGMUniformScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SGMUniformScheduler, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<SGMUniformScheduler>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<SGMUniformScheduler>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/denoiser.hpp:424:34: note: in instantiation of function template specialization 'std::make_shared<SGMUniformScheduler>' requested here
  424 |                 scheduler = std::make_shared<SGMUniformScheduler>();
      |                                  ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'SimpleScheduler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<SimpleScheduler>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<SimpleScheduler>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<SimpleScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<SimpleScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SimpleScheduler, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<SimpleScheduler>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<SimpleScheduler>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/denoiser.hpp:428:34: note: in instantiation of function template specialization 'std::make_shared<SimpleScheduler>' requested here
  428 |                 scheduler = std::make_shared<SimpleScheduler>();
      |                                  ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'SmoothStepScheduler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<SmoothStepScheduler>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<SmoothStepScheduler>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<SmoothStepScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<SmoothStepScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SmoothStepScheduler, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<SmoothStepScheduler>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<SmoothStepScheduler>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/denoiser.hpp:432:34: note: in instantiation of function template specialization 'std::make_shared<SmoothStepScheduler>' requested here
  432 |                 scheduler = std::make_shared<SmoothStepScheduler>();
      |                                  ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'KLOptimalScheduler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<KLOptimalScheduler>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<KLOptimalScheduler>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<KLOptimalScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<KLOptimalScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<KLOptimalScheduler, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<KLOptimalScheduler>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<KLOptimalScheduler>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/denoiser.hpp:436:34: note: in instantiation of function template specialization 'std::make_shared<KLOptimalScheduler>' requested here
  436 |                 scheduler = std::make_shared<KLOptimalScheduler>();
      |                                  ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'LCMScheduler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<LCMScheduler>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<LCMScheduler>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<LCMScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<LCMScheduler, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LCMScheduler, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<LCMScheduler>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<LCMScheduler>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/denoiser.hpp:440:34: note: in instantiation of function template specialization 'std::make_shared<LCMScheduler>' requested here
  440 |                 scheduler = std::make_shared<LCMScheduler>();
      |                                  ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Flux::RMSNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::RMSNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::RMSNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::RMSNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:62:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::RMSNorm, void>' requested here
   62 |             blocks["query_norm"] = std::shared_ptr<GGMLBlock>(new RMSNorm(dim));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Flux::RMSNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::RMSNorm *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::RMSNorm *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::RMSNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::RMSNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::RMSNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:62:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::RMSNorm, void>' requested here
   62 |             blocks["query_norm"] = std::shared_ptr<GGMLBlock>(new RMSNorm(dim));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Flux::QKNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::QKNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::QKNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::QKNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:97:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::QKNorm, void>' requested here
   97 |             blocks["norm"]   = std::shared_ptr<GGMLBlock>(new QKNorm(head_dim));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Flux::QKNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::QKNorm *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::QKNorm *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::QKNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::QKNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::QKNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:97:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::QKNorm, void>' requested here
   97 |             blocks["norm"]   = std::shared_ptr<GGMLBlock>(new QKNorm(head_dim));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Flux::Modulation' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::Modulation *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::Modulation *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::Modulation, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:269:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::Modulation, void>' requested here
  269 |                 blocks["img_mod"] = std::shared_ptr<GGMLBlock>(new Modulation(hidden_size, true));
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Flux::Modulation' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::Modulation *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::Modulation *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::Modulation *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::Modulation *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::Modulation, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:269:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::Modulation, void>' requested here
  269 |                 blocks["img_mod"] = std::shared_ptr<GGMLBlock>(new Modulation(hidden_size, true));
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Flux::SelfAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::SelfAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::SelfAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::SelfAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:272:35: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::SelfAttention, void>' requested here
  272 |             blocks["img_attn"]  = std::shared_ptr<GGMLBlock>(new SelfAttention(hidden_size, num_heads, qkv_bias, mlp_proj_bias));
      |                                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Flux::SelfAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::SelfAttention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::SelfAttention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::SelfAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::SelfAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::SelfAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:272:35: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::SelfAttention, void>' requested here
  272 |             blocks["img_attn"]  = std::shared_ptr<GGMLBlock>(new SelfAttention(hidden_size, num_heads, qkv_bias, mlp_proj_bias));
      |                                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Flux::YakMLP' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::YakMLP *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::YakMLP *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::YakMLP, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:276:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::YakMLP, void>' requested here
  276 |                 blocks["img_mlp"] = std::shared_ptr<GGMLBlock>(new YakMLP(hidden_size, mlp_hidden_dim, mlp_proj_bias));
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Flux::YakMLP' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::YakMLP *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::YakMLP *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::YakMLP *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::YakMLP *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::YakMLP, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:276:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::YakMLP, void>' requested here
  276 |                 blocks["img_mlp"] = std::shared_ptr<GGMLBlock>(new YakMLP(hidden_size, mlp_hidden_dim, mlp_proj_bias));
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Flux::MLP' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::MLP *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::MLP *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::MLP, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:278:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::MLP, void>' requested here
  278 |                 blocks["img_mlp"] = std::shared_ptr<GGMLBlock>(new MLP(hidden_size, mlp_hidden_dim, use_mlp_silu_act, mlp_proj_bias));
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Flux::MLP' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::MLP *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::MLP *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::MLP *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::MLP *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::MLP, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:278:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::MLP, void>' requested here
  278 |                 blocks["img_mlp"] = std::shared_ptr<GGMLBlock>(new MLP(hidden_size, mlp_hidden_dim, use_mlp_silu_act, mlp_proj_bias));
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Flux::MLPEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::MLPEmbedder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::MLPEmbedder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::MLPEmbedder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:586:57: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::MLPEmbedder, void>' requested here
  586 |                 blocks["layers." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new MLPEmbedder(inner_size, inner_size));
      |                                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Flux::MLPEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::MLPEmbedder *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Flux::MLPEmbedder *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::MLPEmbedder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::MLPEmbedder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Flux::MLPEmbedder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/flux.hpp:586:57: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Flux::MLPEmbedder, void>' requested here
  586 |                 blocks["layers." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new MLPEmbedder(inner_size, inner_size));
      |                                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:10:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/algorithm:63:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_algo.h:69:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_tempbuf.h:61:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Flux::RMSNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Flux::RMSNorm>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Flux::RMSNorm>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Flux::RMSNorm, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Flux::RMSNorm, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::RMSNorm, std::allocator<void>, long &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Flux::RMSNorm>::__shared_ptr<std::allocator<void>, long &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Flux::RMSNorm>::shared_ptr<std::allocator<void>, long &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/flux.hpp:638:46: note: in instantiation of function template specialization 'std::make_shared<Flux::RMSNorm, long &>' requested here
  638 |             blocks["norm"]            = std::make_shared<RMSNorm>(hidden_size_x);
      |                                              ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Flux::ChromaApproximator' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Flux::ChromaApproximator>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Flux::ChromaApproximator>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Flux::ChromaApproximator, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Flux::ChromaApproximator, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, long &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::ChromaApproximator, std::allocator<void>, long &, long &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Flux::ChromaApproximator>::__shared_ptr<std::allocator<void>, long &, long &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Flux::ChromaApproximator>::shared_ptr<std::allocator<void>, long &, long &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/flux.hpp:783:59: note: in instantiation of function template specialization 'std::make_shared<Flux::ChromaApproximator, long &, long &>' requested here
  783 |                 blocks["distilled_guidance_layer"] = std::make_shared<ChromaApproximator>(params.in_dim, params.hidden_size);
      |                                                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Flux::MLPEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Flux::MLPEmbedder>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Flux::MLPEmbedder>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Flux::MLPEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Flux::MLPEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<int, long &, bool>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::MLPEmbedder, std::allocator<void>, int, long &, bool>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Flux::MLPEmbedder>::__shared_ptr<std::allocator<void>, int, long &, bool>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Flux::MLPEmbedder>::shared_ptr<std::allocator<void>, int, long &, bool>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/flux.hpp:785:42: note: in instantiation of function template specialization 'std::make_shared<Flux::MLPEmbedder, int, long &, bool>' requested here
  785 |                 blocks["time_in"] = std::make_shared<MLPEmbedder>(256, params.hidden_size, !params.disable_bias);
      |                                          ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Flux::DoubleStreamBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Flux::DoubleStreamBlock>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Flux::DoubleStreamBlock>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Flux::DoubleStreamBlock, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Flux::DoubleStreamBlock, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, int &, float &, int &, bool &, bool &, bool &, bool, bool &, bool &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::DoubleStreamBlock, std::allocator<void>, long &, int &, float &, int &, bool &, bool &, bool &, bool, bool &, bool &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Flux::DoubleStreamBlock>::__shared_ptr<std::allocator<void>, long &, int &, float &, int &, bool &, bool &, bool &, bool, bool &, bool &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Flux::DoubleStreamBlock>::shared_ptr<std::allocator<void>, long &, int &, float &, int &, bool &, bool &, bool &, bool, bool &, bool &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/flux.hpp:799:69: note: in instantiation of function template specialization 'std::make_shared<Flux::DoubleStreamBlock, long &, int &, float &, int &, bool &, bool &, bool &, bool, bool &, bool &>' requested here
  799 |                 blocks["double_blocks." + std::to_string(i)] = std::make_shared<DoubleStreamBlock>(params.hidden_size,
      |                                                                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Flux::SingleStreamBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Flux::SingleStreamBlock>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Flux::SingleStreamBlock>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Flux::SingleStreamBlock, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Flux::SingleStreamBlock, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, int &, float &, int &, float, bool &, bool &, bool, bool &, bool &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::SingleStreamBlock, std::allocator<void>, long &, int &, float &, int &, float, bool &, bool &, bool, bool &, bool &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Flux::SingleStreamBlock>::__shared_ptr<std::allocator<void>, long &, int &, float &, int &, float, bool &, bool &, bool, bool &, bool &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Flux::SingleStreamBlock>::shared_ptr<std::allocator<void>, long &, int &, float &, int &, float, bool &, bool &, bool, bool &, bool &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/flux.hpp:812:69: note: in instantiation of function template specialization 'std::make_shared<Flux::SingleStreamBlock, long &, int &, float &, int &, float, bool &, bool &, bool, bool &, bool &>' requested here
  812 |                 blocks["single_blocks." + std::to_string(i)] = std::make_shared<SingleStreamBlock>(params.hidden_size,
      |                                                                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Flux::NerfEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Flux::NerfEmbedder>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Flux::NerfEmbedder>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Flux::NerfEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Flux::NerfEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, long &, int &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::NerfEmbedder, std::allocator<void>, long &, long &, int &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Flux::NerfEmbedder>::__shared_ptr<std::allocator<void>, long &, long &, int &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Flux::NerfEmbedder>::shared_ptr<std::allocator<void>, long &, long &, int &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/flux.hpp:825:54: note: in instantiation of function template specialization 'std::make_shared<Flux::NerfEmbedder, long &, long &, int &>' requested here
  825 |                 blocks["nerf_image_embedder"] = std::make_shared<NerfEmbedder>(params.in_channels,
      |                                                      ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Flux::NerfGLUBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Flux::NerfGLUBlock>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Flux::NerfGLUBlock>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Flux::NerfGLUBlock, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Flux::NerfGLUBlock, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, long &, int &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::NerfGLUBlock, std::allocator<void>, long &, long &, int &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Flux::NerfGLUBlock>::__shared_ptr<std::allocator<void>, long &, long &, int &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Flux::NerfGLUBlock>::shared_ptr<std::allocator<void>, long &, long &, int &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/flux.hpp:830:71: note: in instantiation of function template specialization 'std::make_shared<Flux::NerfGLUBlock, long &, long &, int &>' requested here
  830 |                     blocks["nerf_blocks." + std::to_string(i)] = std::make_shared<NerfGLUBlock>(params.hidden_size,
      |                                                                       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Flux::NerfFinalLayerConv' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Flux::NerfFinalLayerConv>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Flux::NerfFinalLayerConv>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Flux::NerfFinalLayerConv, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Flux::NerfFinalLayerConv, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, long &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::NerfFinalLayerConv, std::allocator<void>, long &, long &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Flux::NerfFinalLayerConv>::__shared_ptr<std::allocator<void>, long &, long &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Flux::NerfFinalLayerConv>::shared_ptr<std::allocator<void>, long &, long &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/flux.hpp:835:56: note: in instantiation of function template specialization 'std::make_shared<Flux::NerfFinalLayerConv, long &, long &>' requested here
  835 |                 blocks["nerf_final_layer_conv"] = std::make_shared<NerfFinalLayerConv>(params.chroma_radiance_params.nerf_hidden_size,
      |                                                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Flux::LastLayer' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Flux::LastLayer>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Flux::LastLayer>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Flux::LastLayer, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Flux::LastLayer, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, int, long &, bool &, bool>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::LastLayer, std::allocator<void>, long &, int, long &, bool &, bool>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Flux::LastLayer>::__shared_ptr<std::allocator<void>, long &, int, long &, bool &, bool>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Flux::LastLayer>::shared_ptr<std::allocator<void>, long &, int, long &, bool &, bool>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/flux.hpp:839:46: note: in instantiation of function template specialization 'std::make_shared<Flux::LastLayer, long &, int, long &, bool &, bool>' requested here
  839 |                 blocks["final_layer"] = std::make_shared<LastLayer>(params.hidden_size, 1, params.out_channels, params.is_chroma, !params.disable_bias);
      |                                              ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Flux::Modulation' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Flux::Modulation>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Flux::Modulation>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Flux::Modulation, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Flux::Modulation, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, bool, bool>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux::Modulation, std::allocator<void>, long &, bool, bool>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Flux::Modulation>::__shared_ptr<std::allocator<void>, long &, bool, bool>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Flux::Modulation>::shared_ptr<std::allocator<void>, long &, bool, bool>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/flux.hpp:843:63: note: in instantiation of function template specialization 'std::make_shared<Flux::Modulation, long &, bool, bool>' requested here
  843 |                 blocks["double_stream_modulation_img"] = std::make_shared<Modulation>(params.hidden_size, true, !params.disable_bias);
      |                                                               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'SelfAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SelfAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SelfAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<SelfAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:254:27: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<SelfAttention, void>' requested here
  254 |         blocks["attn"]  = std::shared_ptr<GGMLBlock>(new SelfAttention(hidden_size, num_heads, qk_norm, qkv_bias, pre_only));
      |                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'SelfAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<SelfAttention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<SelfAttention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SelfAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SelfAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<SelfAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:254:27: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<SelfAttention, void>' requested here
  254 |         blocks["attn"]  = std::shared_ptr<GGMLBlock>(new SelfAttention(hidden_size, num_heads, qk_norm, qkv_bias, pre_only));
      |                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Mlp' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Mlp *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Mlp *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Mlp, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:263:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Mlp, void>' requested here
  263 |             blocks["mlp"]          = std::shared_ptr<GGMLBlock>(new Mlp(hidden_size, mlp_hidden_dim));
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Mlp' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Mlp *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Mlp *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Mlp *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Mlp *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Mlp, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:263:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Mlp, void>' requested here
  263 |             blocks["mlp"]          = std::shared_ptr<GGMLBlock>(new Mlp(hidden_size, mlp_hidden_dim));
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'DismantledBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<DismantledBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<DismantledBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<DismantledBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:562:35: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<DismantledBlock, void>' requested here
  562 |         blocks["context_block"] = std::shared_ptr<GGMLBlock>(new DismantledBlock(hidden_size, num_heads, mlp_ratio, qk_norm, qkv_bias, pre_only, false));
      |                                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'DismantledBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<DismantledBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<DismantledBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<DismantledBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<DismantledBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<DismantledBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:562:35: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<DismantledBlock, void>' requested here
  562 |         blocks["context_block"] = std::shared_ptr<GGMLBlock>(new DismantledBlock(hidden_size, num_heads, mlp_ratio, qk_norm, qkv_bias, pre_only, false));
      |                                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'PatchEmbed' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PatchEmbed *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PatchEmbed *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<PatchEmbed, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:686:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<PatchEmbed, void>' requested here
  686 |         blocks["x_embedder"] = std::shared_ptr<GGMLBlock>(new PatchEmbed(input_size, patch_size, in_channels, hidden_size, true));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'PatchEmbed' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<PatchEmbed *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<PatchEmbed *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PatchEmbed *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PatchEmbed *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<PatchEmbed, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:686:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<PatchEmbed, void>' requested here
  686 |         blocks["x_embedder"] = std::shared_ptr<GGMLBlock>(new PatchEmbed(input_size, patch_size, in_channels, hidden_size, true));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'TimestepEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TimestepEmbedder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TimestepEmbedder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TimestepEmbedder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:687:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TimestepEmbedder, void>' requested here
  687 |         blocks["t_embedder"] = std::shared_ptr<GGMLBlock>(new TimestepEmbedder(hidden_size));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'TimestepEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<TimestepEmbedder *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<TimestepEmbedder *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TimestepEmbedder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TimestepEmbedder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TimestepEmbedder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:687:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TimestepEmbedder, void>' requested here
  687 |         blocks["t_embedder"] = std::shared_ptr<GGMLBlock>(new TimestepEmbedder(hidden_size));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'VectorEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<VectorEmbedder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<VectorEmbedder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<VectorEmbedder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:690:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<VectorEmbedder, void>' requested here
  690 |             blocks["y_embedder"] = std::shared_ptr<GGMLBlock>(new VectorEmbedder(adm_in_channels, hidden_size));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'VectorEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<VectorEmbedder *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<VectorEmbedder *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<VectorEmbedder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<VectorEmbedder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<VectorEmbedder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:690:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<VectorEmbedder, void>' requested here
  690 |             blocks["y_embedder"] = std::shared_ptr<GGMLBlock>(new VectorEmbedder(adm_in_channels, hidden_size));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'JointBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<JointBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<JointBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<JointBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:696:59: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<JointBlock, void>' requested here
  696 |             blocks["joint_blocks." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new JointBlock(hidden_size,
      |                                                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'JointBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<JointBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<JointBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<JointBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<JointBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<JointBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:696:59: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<JointBlock, void>' requested here
  696 |             blocks["joint_blocks." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new JointBlock(hidden_size,
      |                                                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'FinalLayer' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FinalLayer *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FinalLayer *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<FinalLayer, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:705:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<FinalLayer, void>' requested here
  705 |         blocks["final_layer"] = std::shared_ptr<GGMLBlock>(new FinalLayer(hidden_size, patch_size, out_channels));
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'FinalLayer' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<FinalLayer *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<FinalLayer *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FinalLayer *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FinalLayer *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<FinalLayer, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/mmdit.hpp:705:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<FinalLayer, void>' requested here
  705 |         blocks["final_layer"] = std::shared_ptr<GGMLBlock>(new FinalLayer(hidden_size, patch_size, out_channels));
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Qwen::TimestepEmbedding' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::TimestepEmbedding *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::TimestepEmbedding *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Qwen::TimestepEmbedding, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/qwen_image.hpp:50:43: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Qwen::TimestepEmbedding, void>' requested here
   50 |             blocks["timestep_embedder"] = std::shared_ptr<GGMLBlock>(new TimestepEmbedding(256, embedding_dim));
      |                                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Qwen::TimestepEmbedding' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Qwen::TimestepEmbedding *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Qwen::TimestepEmbedding *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::TimestepEmbedding *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::TimestepEmbedding *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Qwen::TimestepEmbedding, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/qwen_image.hpp:50:43: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Qwen::TimestepEmbedding, void>' requested here
   50 |             blocks["timestep_embedder"] = std::shared_ptr<GGMLBlock>(new TimestepEmbedding(256, embedding_dim));
      |                                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Qwen::QwenImageAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenImageAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenImageAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Qwen::QwenImageAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/qwen_image.hpp:217:30: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Qwen::QwenImageAttention, void>' requested here
  217 |             blocks["attn"] = std::shared_ptr<GGMLBlock>(new QwenImageAttention(dim,
      |                              ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Qwen::QwenImageAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Qwen::QwenImageAttention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Qwen::QwenImageAttention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenImageAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenImageAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Qwen::QwenImageAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/qwen_image.hpp:217:30: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Qwen::QwenImageAttention, void>' requested here
  217 |             blocks["attn"] = std::shared_ptr<GGMLBlock>(new QwenImageAttention(dim,
      |                              ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Qwen::QwenTimestepProjEmbeddings' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenTimestepProjEmbeddings *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenTimestepProjEmbeddings *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Qwen::QwenTimestepProjEmbeddings, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/qwen_image.hpp:374:41: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Qwen::QwenTimestepProjEmbeddings, void>' requested here
  374 |             blocks["time_text_embed"] = std::shared_ptr<GGMLBlock>(new QwenTimestepProjEmbeddings(inner_dim));
      |                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Qwen::QwenTimestepProjEmbeddings' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Qwen::QwenTimestepProjEmbeddings *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Qwen::QwenTimestepProjEmbeddings *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenTimestepProjEmbeddings *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenTimestepProjEmbeddings *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Qwen::QwenTimestepProjEmbeddings, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/qwen_image.hpp:374:41: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Qwen::QwenTimestepProjEmbeddings, void>' requested here
  374 |             blocks["time_text_embed"] = std::shared_ptr<GGMLBlock>(new QwenTimestepProjEmbeddings(inner_dim));
      |                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Qwen::QwenImageTransformerBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenImageTransformerBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenImageTransformerBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Qwen::QwenImageTransformerBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/qwen_image.hpp:381:69: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Qwen::QwenImageTransformerBlock, void>' requested here
  381 |                 auto block                                        = std::shared_ptr<GGMLBlock>(new QwenImageTransformerBlock(inner_dim,
      |                                                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Qwen::QwenImageTransformerBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Qwen::QwenImageTransformerBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Qwen::QwenImageTransformerBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenImageTransformerBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::QwenImageTransformerBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Qwen::QwenImageTransformerBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/qwen_image.hpp:381:69: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Qwen::QwenImageTransformerBlock, void>' requested here
  381 |                 auto block                                        = std::shared_ptr<GGMLBlock>(new QwenImageTransformerBlock(inner_dim,
      |                                                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Qwen::AdaLayerNormContinuous' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::AdaLayerNormContinuous *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::AdaLayerNormContinuous *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Qwen::AdaLayerNormContinuous, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/qwen_image.hpp:389:34: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Qwen::AdaLayerNormContinuous, void>' requested here
  389 |             blocks["norm_out"] = std::shared_ptr<GGMLBlock>(new AdaLayerNormContinuous(inner_dim, inner_dim, false, 1e-6f));
      |                                  ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Qwen::AdaLayerNormContinuous' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Qwen::AdaLayerNormContinuous *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Qwen::AdaLayerNormContinuous *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::AdaLayerNormContinuous *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Qwen::AdaLayerNormContinuous *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Qwen::AdaLayerNormContinuous, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/qwen_image.hpp:389:34: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Qwen::AdaLayerNormContinuous, void>' requested here
  389 |             blocks["norm_out"] = std::shared_ptr<GGMLBlock>(new AdaLayerNormContinuous(inner_dim, inner_dim, false, 1e-6f));
      |                                  ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'UpSampleBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<UpSampleBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<UpSampleBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<UpSampleBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/unet.hpp:377:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<UpSampleBlock, void>' requested here
  377 |                     blocks[name]     = std::shared_ptr<GGMLBlock>(new UpSampleBlock(ch, ch));
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'UpSampleBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<UpSampleBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<UpSampleBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<UpSampleBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<UpSampleBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<UpSampleBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/unet.hpp:377:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<UpSampleBlock, void>' requested here
  377 |                     blocks[name]     = std::shared_ptr<GGMLBlock>(new UpSampleBlock(ch, ch));
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'ResnetBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResnetBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResnetBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<ResnetBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:304:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<ResnetBlock, void>' requested here
  304 |                 blocks[name]     = std::shared_ptr<GGMLBlock>(new ResnetBlock(block_in, block_out));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'ResnetBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<ResnetBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<ResnetBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResnetBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResnetBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<ResnetBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:304:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<ResnetBlock, void>' requested here
  304 |                 blocks[name]     = std::shared_ptr<GGMLBlock>(new ResnetBlock(block_in, block_out));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'AttnBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AttnBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AttnBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<AttnBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:314:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<AttnBlock, void>' requested here
  314 |         blocks["mid.attn_1"]  = std::shared_ptr<GGMLBlock>(new AttnBlock(block_in, use_linear_projection));
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'AttnBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<AttnBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<AttnBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AttnBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AttnBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<AttnBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:314:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<AttnBlock, void>' requested here
  314 |         blocks["mid.attn_1"]  = std::shared_ptr<GGMLBlock>(new AttnBlock(block_in, use_linear_projection));
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'AE3DConv' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AE3DConv *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AE3DConv *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<AE3DConv, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:380:20: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<AE3DConv, void>' requested here
  380 |             return std::shared_ptr<GGMLBlock>(new AE3DConv(in_channels, out_channels, kernel_size, video_kernel_size, stride, padding));
      |                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'AE3DConv' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<AE3DConv *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<AE3DConv *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AE3DConv *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<AE3DConv *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<AE3DConv, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:380:20: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<AE3DConv, void>' requested here
  380 |             return std::shared_ptr<GGMLBlock>(new AE3DConv(in_channels, out_channels, kernel_size, video_kernel_size, stride, padding));
      |                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'VideoResnetBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<VideoResnetBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<VideoResnetBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<VideoResnetBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:389:20: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<VideoResnetBlock, void>' requested here
  389 |             return std::shared_ptr<GGMLBlock>(new VideoResnetBlock(in_channels, out_channels, video_kernel_size));
      |                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'VideoResnetBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<VideoResnetBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<VideoResnetBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<VideoResnetBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<VideoResnetBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<VideoResnetBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:389:20: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<VideoResnetBlock, void>' requested here
  389 |             return std::shared_ptr<GGMLBlock>(new VideoResnetBlock(in_channels, out_channels, video_kernel_size));
      |                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Decoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Decoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Decoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Decoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:523:29: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Decoder, void>' requested here
  523 |         blocks["decoder"] = std::shared_ptr<GGMLBlock>(new Decoder(dd_config.ch,
      |                             ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Decoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Decoder *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Decoder *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Decoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Decoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Decoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:523:29: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Decoder, void>' requested here
  523 |         blocks["decoder"] = std::shared_ptr<GGMLBlock>(new Decoder(dd_config.ch,
      |                             ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Encoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Encoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Encoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Encoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:536:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Encoder, void>' requested here
  536 |             blocks["encoder"] = std::shared_ptr<GGMLBlock>(new Encoder(dd_config.ch,
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Encoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Encoder *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Encoder *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Encoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Encoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Encoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/vae.hpp:536:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Encoder, void>' requested here
  536 |             blocks["encoder"] = std::shared_ptr<GGMLBlock>(new Encoder(dd_config.ch,
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::CausalConv3d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::CausalConv3d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::CausalConv3d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::CausalConv3d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:139:39: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::CausalConv3d, void>' requested here
  139 |                 blocks["time_conv"] = std::shared_ptr<GGMLBlock>(new CausalConv3d(dim, dim * 2, {3, 1, 1}, {1, 1, 1}, {1, 0, 0}));
      |                                       ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::CausalConv3d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::CausalConv3d *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::CausalConv3d *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::CausalConv3d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::CausalConv3d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::CausalConv3d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:139:39: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::CausalConv3d, void>' requested here
  139 |                 blocks["time_conv"] = std::shared_ptr<GGMLBlock>(new CausalConv3d(dim, dim * 2, {3, 1, 1}, {1, 1, 1}, {1, 0, 0}));
      |                                       ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::RMS_norm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::RMS_norm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::RMS_norm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::RMS_norm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:348:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::RMS_norm, void>' requested here
  348 |             blocks["residual.0"] = std::shared_ptr<GGMLBlock>(new RMS_norm(in_dim));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::RMS_norm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::RMS_norm *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::RMS_norm *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::RMS_norm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::RMS_norm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::RMS_norm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:348:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::RMS_norm, void>' requested here
  348 |             blocks["residual.0"] = std::shared_ptr<GGMLBlock>(new RMS_norm(in_dim));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::AvgDown3D' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::AvgDown3D *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::AvgDown3D *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::AvgDown3D, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:420:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::AvgDown3D, void>' requested here
  420 |             blocks["avg_shortcut"] = std::shared_ptr<GGMLBlock>(new AvgDown3D(in_dim, out_dim, temperal_downsample ? 2 : 1, down_flag ? 2 : 1));
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::AvgDown3D' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::AvgDown3D *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::AvgDown3D *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::AvgDown3D *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::AvgDown3D *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::AvgDown3D, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:420:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::AvgDown3D, void>' requested here
  420 |             blocks["avg_shortcut"] = std::shared_ptr<GGMLBlock>(new AvgDown3D(in_dim, out_dim, temperal_downsample ? 2 : 1, down_flag ? 2 : 1));
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::ResidualBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::ResidualBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::ResidualBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::ResidualBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:424:62: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::ResidualBlock, void>' requested here
  424 |                 blocks["downsamples." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new ResidualBlock(in_dim, out_dim));
      |                                                              ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::ResidualBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::ResidualBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::ResidualBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::ResidualBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::ResidualBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::ResidualBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:424:62: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::ResidualBlock, void>' requested here
  424 |                 blocks["downsamples." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new ResidualBlock(in_dim, out_dim));
      |                                                              ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::Resample' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Resample *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Resample *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Resample, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:429:62: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Resample, void>' requested here
  429 |                 blocks["downsamples." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new Resample(out_dim, mode, true));
      |                                                              ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::Resample' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Resample *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Resample *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Resample *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Resample *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Resample, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:429:62: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Resample, void>' requested here
  429 |                 blocks["downsamples." + std::to_string(i)] = std::shared_ptr<GGMLBlock>(new Resample(out_dim, mode, true));
      |                                                              ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::DupUp3D' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::DupUp3D *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::DupUp3D *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::DupUp3D, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:481:42: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::DupUp3D, void>' requested here
  481 |                 blocks["avg_shortcut"] = std::shared_ptr<GGMLBlock>(new DupUp3D(in_dim, out_dim, temperal_upsample ? 2 : 1, up_flag ? 2 : 1));
      |                                          ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::DupUp3D' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::DupUp3D *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::DupUp3D *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::DupUp3D *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::DupUp3D *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::DupUp3D, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:481:42: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::DupUp3D, void>' requested here
  481 |                 blocks["avg_shortcut"] = std::shared_ptr<GGMLBlock>(new DupUp3D(in_dim, out_dim, temperal_upsample ? 2 : 1, up_flag ? 2 : 1));
      |                                          ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::Down_ResidualBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Down_ResidualBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Down_ResidualBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Down_ResidualBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:632:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Down_ResidualBlock, void>' requested here
  632 |                     auto block       = std::shared_ptr<GGMLBlock>(new Down_ResidualBlock(in_dim,
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::Down_ResidualBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Down_ResidualBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Down_ResidualBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Down_ResidualBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Down_ResidualBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Down_ResidualBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:632:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Down_ResidualBlock, void>' requested here
  632 |                     auto block       = std::shared_ptr<GGMLBlock>(new Down_ResidualBlock(in_dim,
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::AttentionBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::AttentionBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::AttentionBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::AttentionBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:655:34: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::AttentionBlock, void>' requested here
  655 |             blocks["middle.1"] = std::shared_ptr<GGMLBlock>(new AttentionBlock(out_dim));
      |                                  ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::AttentionBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::AttentionBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::AttentionBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::AttentionBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::AttentionBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::AttentionBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:655:34: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::AttentionBlock, void>' requested here
  655 |             blocks["middle.1"] = std::shared_ptr<GGMLBlock>(new AttentionBlock(out_dim));
      |                                  ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::Up_ResidualBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Up_ResidualBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Up_ResidualBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Up_ResidualBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:798:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Up_ResidualBlock, void>' requested here
  798 |                     auto block     = std::shared_ptr<GGMLBlock>(new Up_ResidualBlock(in_dim,
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::Up_ResidualBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Up_ResidualBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Up_ResidualBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Up_ResidualBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Up_ResidualBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Up_ResidualBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:798:38: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Up_ResidualBlock, void>' requested here
  798 |                     auto block     = std::shared_ptr<GGMLBlock>(new Up_ResidualBlock(in_dim,
      |                                      ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::Encoder3d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Encoder3d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Encoder3d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Encoder3d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:963:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Encoder3d, void>' requested here
  963 |                 blocks["encoder"] = std::shared_ptr<GGMLBlock>(new Encoder3d(dim, z_dim * 2, dim_mult, num_res_blocks, temperal_downsample, wan2_2));
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::Encoder3d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Encoder3d *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Encoder3d *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Encoder3d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Encoder3d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Encoder3d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:963:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Encoder3d, void>' requested here
  963 |                 blocks["encoder"] = std::shared_ptr<GGMLBlock>(new Encoder3d(dim, z_dim * 2, dim_mult, num_res_blocks, temperal_downsample, wan2_2));
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::Decoder3d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Decoder3d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Decoder3d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Decoder3d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:966:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Decoder3d, void>' requested here
  966 |             blocks["decoder"] = std::shared_ptr<GGMLBlock>(new Decoder3d(dec_dim, z_dim, dim_mult, num_res_blocks, temperal_upsample, wan2_2));
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::Decoder3d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Decoder3d *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Decoder3d *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Decoder3d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Decoder3d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Decoder3d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:966:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Decoder3d, void>' requested here
  966 |             blocks["decoder"] = std::shared_ptr<GGMLBlock>(new Decoder3d(dec_dim, z_dim, dim_mult, num_res_blocks, temperal_upsample, wan2_2));
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Identity' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Identity *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Identity *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Identity, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1313:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Identity, void>' requested here
 1313 |                 blocks["norm_q"] = std::shared_ptr<GGMLBlock>(new Identity());
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Identity' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Identity *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Identity *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Identity *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Identity *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Identity, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1313:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Identity, void>' requested here
 1313 |                 blocks["norm_q"] = std::shared_ptr<GGMLBlock>(new Identity());
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::WanSelfAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanSelfAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanSelfAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::WanSelfAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1515:35: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::WanSelfAttention, void>' requested here
 1515 |             blocks["self_attn"] = std::shared_ptr<GGMLBlock>(new WanSelfAttention(dim, num_heads, qk_norm, eps));
      |                                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::WanSelfAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::WanSelfAttention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::WanSelfAttention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanSelfAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanSelfAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::WanSelfAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1515:35: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::WanSelfAttention, void>' requested here
 1515 |             blocks["self_attn"] = std::shared_ptr<GGMLBlock>(new WanSelfAttention(dim, num_heads, qk_norm, eps));
      |                                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::WanT2VCrossAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanT2VCrossAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanT2VCrossAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::WanT2VCrossAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1522:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::WanT2VCrossAttention, void>' requested here
 1522 |                 blocks["cross_attn"] = std::shared_ptr<GGMLBlock>(new WanT2VCrossAttention(dim, num_heads, qk_norm, eps));
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::WanT2VCrossAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::WanT2VCrossAttention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::WanT2VCrossAttention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanT2VCrossAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanT2VCrossAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::WanT2VCrossAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1522:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::WanT2VCrossAttention, void>' requested here
 1522 |                 blocks["cross_attn"] = std::shared_ptr<GGMLBlock>(new WanT2VCrossAttention(dim, num_heads, qk_norm, eps));
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::WanI2VCrossAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanI2VCrossAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanI2VCrossAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::WanI2VCrossAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1524:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::WanI2VCrossAttention, void>' requested here
 1524 |                 blocks["cross_attn"] = std::shared_ptr<GGMLBlock>(new WanI2VCrossAttention(dim, num_heads, qk_norm, eps));
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::WanI2VCrossAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::WanI2VCrossAttention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::WanI2VCrossAttention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanI2VCrossAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanI2VCrossAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::WanI2VCrossAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1524:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::WanI2VCrossAttention, void>' requested here
 1524 |                 blocks["cross_attn"] = std::shared_ptr<GGMLBlock>(new WanI2VCrossAttention(dim, num_heads, qk_norm, eps));
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::WanAttentionBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanAttentionBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanAttentionBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::WanAttentionBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1782:57: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::WanAttentionBlock, void>' requested here
 1782 |                 auto block                            = std::shared_ptr<GGMLBlock>(new WanAttentionBlock(params.model_type == "t2v",
      |                                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::WanAttentionBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::WanAttentionBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::WanAttentionBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanAttentionBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::WanAttentionBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::WanAttentionBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1782:57: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::WanAttentionBlock, void>' requested here
 1782 |                 auto block                            = std::shared_ptr<GGMLBlock>(new WanAttentionBlock(params.model_type == "t2v",
      |                                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::Head' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Head *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Head *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Head, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1793:30: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Head, void>' requested here
 1793 |             blocks["head"] = std::shared_ptr<GGMLBlock>(new Head(params.dim, params.out_dim, params.patch_size, params.eps));
      |                              ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::Head' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Head *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::Head *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Head *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::Head *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::Head, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1793:30: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::Head, void>' requested here
 1793 |             blocks["head"] = std::shared_ptr<GGMLBlock>(new Head(params.dim, params.out_dim, params.patch_size, params.eps));
      |                              ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::MLPProj' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::MLPProj *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::MLPProj *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::MLPProj, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1797:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::MLPProj, void>' requested here
 1797 |                 blocks["img_emb"] = std::shared_ptr<GGMLBlock>(new MLPProj(1280, params.dim, params.flf_pos_embed_token_number));
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::MLPProj' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::MLPProj *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::MLPProj *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::MLPProj *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::MLPProj *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::MLPProj, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1797:37: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::MLPProj, void>' requested here
 1797 |                 blocks["img_emb"] = std::shared_ptr<GGMLBlock>(new MLPProj(1280, params.dim, params.flf_pos_embed_token_number));
      |                                     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'WAN::VaceWanAttentionBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::VaceWanAttentionBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::VaceWanAttentionBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::VaceWanAttentionBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1803:66: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::VaceWanAttentionBlock, void>' requested here
 1803 |                     auto block                                 = std::shared_ptr<GGMLBlock>(new VaceWanAttentionBlock(params.model_type == "t2v",
      |                                                                  ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'WAN::VaceWanAttentionBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::VaceWanAttentionBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<WAN::VaceWanAttentionBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::VaceWanAttentionBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WAN::VaceWanAttentionBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<WAN::VaceWanAttentionBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/wan.hpp:1803:66: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<WAN::VaceWanAttentionBlock, void>' requested here
 1803 |                     auto block                                 = std::shared_ptr<GGMLBlock>(new VaceWanAttentionBlock(params.model_type == "t2v",
      |                                                                  ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:10:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/algorithm:63:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_algo.h:69:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_tempbuf.h:61:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'ZImage::JointAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<ZImage::JointAttention>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<ZImage::JointAttention>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<ZImage::JointAttention, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<ZImage::JointAttention, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, long &, long &, long &, bool &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ZImage::JointAttention, std::allocator<void>, long &, long &, long &, long &, bool &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<ZImage::JointAttention>::__shared_ptr<std::allocator<void>, long &, long &, long &, long &, bool &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<ZImage::JointAttention>::shared_ptr<std::allocator<void>, long &, long &, long &, long &, bool &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/z_image.hpp:167:46: note: in instantiation of function template specialization 'std::make_shared<ZImage::JointAttention, long &, long &, long &, long &, bool &>' requested here
  167 |             blocks["attention"]       = std::make_shared<JointAttention>(hidden_size, head_dim, num_heads, num_kv_heads, qk_norm);
      |                                              ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'ZImage::FeedForward' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<ZImage::FeedForward>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<ZImage::FeedForward>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<ZImage::FeedForward, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<ZImage::FeedForward, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, long &, long &, float &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ZImage::FeedForward, std::allocator<void>, long &, long &, long &, float &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<ZImage::FeedForward>::__shared_ptr<std::allocator<void>, long &, long &, long &, float &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<ZImage::FeedForward>::shared_ptr<std::allocator<void>, long &, long &, long &, float &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/z_image.hpp:168:46: note: in instantiation of function template specialization 'std::make_shared<ZImage::FeedForward, long &, long &, long &, float &>' requested here
  168 |             blocks["feed_forward"]    = std::make_shared<FeedForward>(hidden_size, hidden_size, multiple_of, ffn_dim_multiplier);
      |                                              ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'LayerNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<LayerNorm>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<LayerNorm>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<LayerNorm, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<LayerNorm, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, float, bool>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LayerNorm, std::allocator<void>, long &, float, bool>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<LayerNorm>::__shared_ptr<std::allocator<void>, long &, float, bool>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<LayerNorm>::shared_ptr<std::allocator<void>, long &, float, bool>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/z_image.hpp:239:49: note: in instantiation of function template specialization 'std::make_shared<LayerNorm, long &, float, bool>' requested here
  239 |             blocks["norm_final"]         = std::make_shared<LayerNorm>(hidden_size, 1e-06f, false);
      |                                                 ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'TimestepEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<TimestepEmbedder>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<TimestepEmbedder>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<TimestepEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<TimestepEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long, int, int>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TimestepEmbedder, std::allocator<void>, long, int, int>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<TimestepEmbedder>::__shared_ptr<std::allocator<void>, long, int, int>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<TimestepEmbedder>::shared_ptr<std::allocator<void>, long, int, int>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/z_image.hpp:297:45: note: in instantiation of function template specialization 'std::make_shared<TimestepEmbedder, long, int, int>' requested here
  297 |             blocks["t_embedder"]     = std::make_shared<TimestepEmbedder>(MIN(z_image_params.hidden_size, 1024), 256, 256);
      |                                             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'ZImage::JointTransformerBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<ZImage::JointTransformerBlock>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<ZImage::JointTransformerBlock>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<ZImage::JointTransformerBlock, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<ZImage::JointTransformerBlock, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<int &, long &, long &, long &, long &, long &, float &, float &, bool &, bool>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ZImage::JointTransformerBlock, std::allocator<void>, int &, long &, long &, long &, long &, long &, float &, float &, bool &, bool>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<ZImage::JointTransformerBlock>::__shared_ptr<std::allocator<void>, int &, long &, long &, long &, long &, long &, float &, float &, bool &, bool>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<ZImage::JointTransformerBlock>::shared_ptr<std::allocator<void>, int &, long &, long &, long &, long &, long &, float &, float &, bool &, bool>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/z_image.hpp:302:35: note: in instantiation of function template specialization 'std::make_shared<ZImage::JointTransformerBlock, int &, long &, long &, long &, long &, long &, float &, float &, bool &, bool>' requested here
  302 |                 auto block = std::make_shared<JointTransformerBlock>(i,
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'ZImage::FinalLayer' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<ZImage::FinalLayer>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<ZImage::FinalLayer>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<ZImage::FinalLayer, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<ZImage::FinalLayer, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<long &, int &, long &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ZImage::FinalLayer, std::allocator<void>, long &, int &, long &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<ZImage::FinalLayer>::__shared_ptr<std::allocator<void>, long &, int &, long &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<ZImage::FinalLayer>::shared_ptr<std::allocator<void>, long &, int &, long &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/z_image.hpp:346:42: note: in instantiation of function template specialization 'std::make_shared<ZImage::FinalLayer, long &, int &, long &>' requested here
  346 |             blocks["final_layer"] = std::make_shared<FinalLayer>(z_image_params.hidden_size, z_image_params.patch_size, z_image_params.out_channels);
      |                                          ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'ResidualDenseBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResidualDenseBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResidualDenseBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<ResidualDenseBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/esrgan.hpp:62:26: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<ResidualDenseBlock, void>' requested here
   62 |         blocks["rdb1"] = std::shared_ptr<GGMLBlock>(new ResidualDenseBlock(num_feat, num_grow_ch));
      |                          ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'ResidualDenseBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<ResidualDenseBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<ResidualDenseBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResidualDenseBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResidualDenseBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<ResidualDenseBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/esrgan.hpp:62:26: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<ResidualDenseBlock, void>' requested here
   62 |         blocks["rdb1"] = std::shared_ptr<GGMLBlock>(new ResidualDenseBlock(num_feat, num_grow_ch));
      |                          ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'RRDB' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RRDB *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RRDB *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<RRDB, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/esrgan.hpp:99:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<RRDB, void>' requested here
   99 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new RRDB(num_feat, num_grow_ch));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'RRDB' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<RRDB *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<RRDB *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RRDB *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RRDB *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<RRDB, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/esrgan.hpp:99:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<RRDB, void>' requested here
   99 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new RRDB(num_feat, num_grow_ch));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:80:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/unique_ptr.h:92:2: warning: delete called on non-final 'RRDBNet' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
   92 |         delete __ptr;
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/unique_ptr.h:398:4: note: in instantiation of member function 'std::default_delete<RRDBNet>::operator()' requested here
  398 |           get_deleter()(std::move(__ptr));
      |           ^
sd/esrgan.hpp:157:5: note: in instantiation of member function 'std::unique_ptr<RRDBNet>::~unique_ptr' requested here
  157 |     ESRGAN(ggml_backend_t backend,
      |     ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'PerceiverAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PerceiverAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PerceiverAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<PerceiverAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:173:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<PerceiverAttention, void>' requested here
  173 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new PerceiverAttention(dim, dim_head, heads));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'PerceiverAttention' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<PerceiverAttention *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<PerceiverAttention *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PerceiverAttention *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PerceiverAttention *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<PerceiverAttention, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:173:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<PerceiverAttention, void>' requested here
  173 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new PerceiverAttention(dim, dim_head, heads));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'PMFeedForward' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PMFeedForward *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PMFeedForward *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<PMFeedForward, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:175:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<PMFeedForward, void>' requested here
  175 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new PMFeedForward(dim, ff_mult));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'PMFeedForward' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<PMFeedForward *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<PMFeedForward *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PMFeedForward *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PMFeedForward *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<PMFeedForward, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:175:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<PMFeedForward, void>' requested here
  175 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new PMFeedForward(dim, ff_mult));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'FacePerceiverResampler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FacePerceiverResampler *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FacePerceiverResampler *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<FacePerceiverResampler, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:218:41: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<FacePerceiverResampler, void>' requested here
  218 |         blocks["perceiver_resampler"] = std::shared_ptr<GGMLBlock>(new FacePerceiverResampler(
      |                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'FacePerceiverResampler' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<FacePerceiverResampler *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<FacePerceiverResampler *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FacePerceiverResampler *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FacePerceiverResampler *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<FacePerceiverResampler, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:218:41: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<FacePerceiverResampler, void>' requested here
  218 |         blocks["perceiver_resampler"] = std::shared_ptr<GGMLBlock>(new FacePerceiverResampler(
      |                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'FuseBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FuseBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FuseBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<FuseBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:254:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<FuseBlock, void>' requested here
  254 |         blocks["mlp1"]       = std::shared_ptr<GGMLBlock>(new FuseBlock(imb_d * 2, imb_d, imb_d, false));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'FuseBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<FuseBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<FuseBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FuseBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FuseBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<FuseBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:254:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<FuseBlock, void>' requested here
  254 |         blocks["mlp1"]       = std::shared_ptr<GGMLBlock>(new FuseBlock(imb_d * 2, imb_d, imb_d, false));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'FuseModule' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FuseModule *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FuseModule *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<FuseModule, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:317:41: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<FuseModule, void>' requested here
  317 |         blocks["fuse_module"]         = std::shared_ptr<GGMLBlock>(new FuseModule(2048));
      |                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'FuseModule' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<FuseModule *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<FuseModule *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FuseModule *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FuseModule *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<FuseModule, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:317:41: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<FuseModule, void>' requested here
  317 |         blocks["fuse_module"]         = std::shared_ptr<GGMLBlock>(new FuseModule(2048));
      |                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'QFormerPerceiver' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<QFormerPerceiver *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<QFormerPerceiver *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<QFormerPerceiver, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:363:41: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<QFormerPerceiver, void>' requested here
  363 |         blocks["qformer_perceiver"]   = std::shared_ptr<GGMLBlock>(new QFormerPerceiver(id_embeddings_dim,
      |                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'QFormerPerceiver' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<QFormerPerceiver *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<QFormerPerceiver *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<QFormerPerceiver *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<QFormerPerceiver *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<QFormerPerceiver, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/pmid.hpp:363:41: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<QFormerPerceiver, void>' requested here
  363 |         blocks["qformer_perceiver"]   = std::shared_ptr<GGMLBlock>(new QFormerPerceiver(id_embeddings_dim,
      |                                         ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'GroupNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GroupNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GroupNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<GroupNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:34:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<GroupNorm, void>' requested here
   34 |             blocks["pool.1"] = std::shared_ptr<GGMLBlock>(new GroupNorm(4, n_gn));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'GroupNorm' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<GroupNorm *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<GroupNorm *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GroupNorm *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<GroupNorm *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<GroupNorm, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:34:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<GroupNorm, void>' requested here
   34 |             blocks["pool.1"] = std::shared_ptr<GGMLBlock>(new GroupNorm(4, n_gn));
      |                                ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'TAEBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TAEBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TAEBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TAEBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:90:43: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TAEBlock, void>' requested here
   90 |         blocks[std::to_string(index++)] = std::shared_ptr<GGMLBlock>(new TAEBlock(channels, channels));
      |                                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'TAEBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<TAEBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<TAEBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TAEBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TAEBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TAEBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:90:43: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TAEBlock, void>' requested here
   90 |         blocks[std::to_string(index++)] = std::shared_ptr<GGMLBlock>(new TAEBlock(channels, channels));
      |                                           ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'TPool' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TPool *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TPool *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TPool, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:333:47: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TPool, void>' requested here
  333 |             blocks[std::to_string(index++)] = std::shared_ptr<GGMLBlock>(new TPool(hidden, stride));
      |                                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'TPool' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<TPool *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<TPool *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TPool *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TPool *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TPool, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:333:47: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TPool, void>' requested here
  333 |             blocks[std::to_string(index++)] = std::shared_ptr<GGMLBlock>(new TPool(hidden, stride));
      |                                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'MemBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<MemBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<MemBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<MemBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:336:51: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<MemBlock, void>' requested here
  336 |                 blocks[std::to_string(index++)] = std::shared_ptr<GGMLBlock>(new MemBlock(hidden, hidden));
      |                                                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'MemBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<MemBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<MemBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<MemBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<MemBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<MemBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:336:51: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<MemBlock, void>' requested here
  336 |                 blocks[std::to_string(index++)] = std::shared_ptr<GGMLBlock>(new MemBlock(hidden, hidden));
      |                                                   ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'TGrow' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TGrow *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TGrow *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TGrow, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:392:47: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TGrow, void>' requested here
  392 |             blocks[std::to_string(index++)] = std::shared_ptr<GGMLBlock>(new TGrow(channels[i], stride));
      |                                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'TGrow' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<TGrow *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<TGrow *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TGrow *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TGrow *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TGrow, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:392:47: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TGrow, void>' requested here
  392 |             blocks[std::to_string(index++)] = std::shared_ptr<GGMLBlock>(new TGrow(channels[i], stride));
      |                                               ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'TinyVideoDecoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyVideoDecoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyVideoDecoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TinyVideoDecoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:454:29: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TinyVideoDecoder, void>' requested here
  454 |         blocks["decoder"] = std::shared_ptr<GGMLBlock>(new TinyVideoDecoder(z_channels, patch));
      |                             ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'TinyVideoDecoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<TinyVideoDecoder *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<TinyVideoDecoder *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyVideoDecoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyVideoDecoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TinyVideoDecoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:454:29: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TinyVideoDecoder, void>' requested here
  454 |         blocks["decoder"] = std::shared_ptr<GGMLBlock>(new TinyVideoDecoder(z_channels, patch));
      |                             ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'TinyVideoEncoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyVideoEncoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyVideoEncoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TinyVideoEncoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:456:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TinyVideoEncoder, void>' requested here
  456 |             blocks["encoder"] = std::shared_ptr<GGMLBlock>(new TinyVideoEncoder(z_channels, patch));
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'TinyVideoEncoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<TinyVideoEncoder *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<TinyVideoEncoder *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyVideoEncoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyVideoEncoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TinyVideoEncoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:456:33: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TinyVideoEncoder, void>' requested here
  456 |             blocks["encoder"] = std::shared_ptr<GGMLBlock>(new TinyVideoEncoder(z_channels, patch));
      |                                 ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'TinyDecoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyDecoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyDecoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TinyDecoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:511:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TinyDecoder, void>' requested here
  511 |         blocks["decoder.layers"] = std::shared_ptr<GGMLBlock>(new TinyDecoder(z_channels, use_midblock_gn));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'TinyDecoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<TinyDecoder *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<TinyDecoder *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyDecoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyDecoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TinyDecoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:511:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TinyDecoder, void>' requested here
  511 |         blocks["decoder.layers"] = std::shared_ptr<GGMLBlock>(new TinyDecoder(z_channels, use_midblock_gn));
      |                                    ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'TinyEncoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyEncoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyEncoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TinyEncoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:514:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TinyEncoder, void>' requested here
  514 |             blocks["encoder.layers"] = std::shared_ptr<GGMLBlock>(new TinyEncoder(z_channels, use_midblock_gn));
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'TinyEncoder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<TinyEncoder *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<TinyEncoder *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyEncoder *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<TinyEncoder *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<TinyEncoder, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/tae.hpp:514:40: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<TinyEncoder, void>' requested here
  514 |             blocks["encoder.layers"] = std::shared_ptr<GGMLBlock>(new TinyEncoder(z_channels, use_midblock_gn));
      |                                        ^
In file included from sd/stable-diffusion.cpp:1:
In file included from sd/ggml_extend.hpp:10:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/algorithm:63:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_algo.h:69:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_tempbuf.h:61:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'STDDefaultRNG' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<STDDefaultRNG>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<STDDefaultRNG>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<STDDefaultRNG, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<STDDefaultRNG, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<STDDefaultRNG, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<STDDefaultRNG>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<STDDefaultRNG>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:336:25: note: in instantiation of function template specialization 'std::make_shared<STDDefaultRNG>' requested here
  336 |             return std::make_shared<STDDefaultRNG>();
      |                         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'MT19937RNG' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<MT19937RNG>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<MT19937RNG>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<MT19937RNG, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<MT19937RNG, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<MT19937RNG, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<MT19937RNG>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<MT19937RNG>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:338:25: note: in instantiation of function template specialization 'std::make_shared<MT19937RNG>' requested here
  338 |             return std::make_shared<MT19937RNG>();
      |                         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'PhiloxRNG' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<PhiloxRNG>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<PhiloxRNG>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<PhiloxRNG, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<PhiloxRNG, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<PhiloxRNG, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<PhiloxRNG>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<PhiloxRNG>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:340:25: note: in instantiation of function template specialization 'std::make_shared<PhiloxRNG>' requested here
  340 |             return std::make_shared<PhiloxRNG>();
      |                         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'SD3CLIPEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<SD3CLIPEmbedder>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<SD3CLIPEmbedder>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<SD3CLIPEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<SD3CLIPEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<SD3CLIPEmbedder, std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<SD3CLIPEmbedder>::__shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<SD3CLIPEmbedder>::shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:550:41: note: in instantiation of function template specialization 'std::make_shared<SD3CLIPEmbedder, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
  550 |                 cond_stage_model = std::make_shared<SD3CLIPEmbedder>(clip_backend,
      |                                         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'MMDiTModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<MMDiTModel>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<MMDiTModel>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<MMDiTModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<MMDiTModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<MMDiTModel, std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<MMDiTModel>::__shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<MMDiTModel>::shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:553:41: note: in instantiation of function template specialization 'std::make_shared<MMDiTModel, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
  553 |                 diffusion_model  = std::make_shared<MMDiTModel>(backend,
      |                                         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'T5CLIPEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<T5CLIPEmbedder>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<T5CLIPEmbedder>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<T5CLIPEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<T5CLIPEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const bool &, const int &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<T5CLIPEmbedder, std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const bool &, const int &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<T5CLIPEmbedder>::__shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const bool &, const int &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<T5CLIPEmbedder>::shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const bool &, const int &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:574:45: note: in instantiation of function template specialization 'std::make_shared<T5CLIPEmbedder, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const bool &, const int &>' requested here
  574 |                     cond_stage_model = std::make_shared<T5CLIPEmbedder>(clip_backend,
      |                                             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'LLMEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<LLMEmbedder>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<LLMEmbedder>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<LLMEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<LLMEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &, const char (&)[1], bool>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<LLMEmbedder, std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &, const char (&)[1], bool>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<LLMEmbedder>::__shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &, const char (&)[1], bool>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<LLMEmbedder>::shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &, const char (&)[1], bool>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:580:45: note: in instantiation of function template specialization 'std::make_shared<LLMEmbedder, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &, const char (&)[1], bool>' requested here
  580 |                     cond_stage_model = std::make_shared<LLMEmbedder>(clip_backend,
      |                                             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'FluxCLIPEmbedder' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<FluxCLIPEmbedder>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<FluxCLIPEmbedder>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<FluxCLIPEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<FluxCLIPEmbedder, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FluxCLIPEmbedder, std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<FluxCLIPEmbedder>::__shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<FluxCLIPEmbedder>::shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:587:45: note: in instantiation of function template specialization 'std::make_shared<FluxCLIPEmbedder, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &>' requested here
  587 |                     cond_stage_model = std::make_shared<FluxCLIPEmbedder>(clip_backend,
      |                                             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'FluxModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<FluxModel>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<FluxModel>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<FluxModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<FluxModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &, const bool &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FluxModel, std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &, const bool &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<FluxModel>::__shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &, const bool &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<FluxModel>::shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &, const bool &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:591:40: note: in instantiation of function template specialization 'std::make_shared<FluxModel, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &, const bool &>' requested here
  591 |                 diffusion_model = std::make_shared<FluxModel>(backend,
      |                                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'WanModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<WanModel>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<WanModel>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<WanModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<WanModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<WanModel, std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<WanModel>::__shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<WanModel>::shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:614:41: note: in instantiation of function template specialization 'std::make_shared<WanModel, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &>' requested here
  614 |                 diffusion_model  = std::make_shared<WanModel>(backend,
      |                                         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'QwenImageModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<QwenImageModel>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<QwenImageModel>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<QwenImageModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<QwenImageModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &, const bool &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<QwenImageModel, std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &, const bool &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<QwenImageModel>::__shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &, const bool &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<QwenImageModel>::shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &, const bool &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:646:41: note: in instantiation of function template specialization 'std::make_shared<QwenImageModel, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &, const bool &>' requested here
  646 |                 diffusion_model  = std::make_shared<QwenImageModel>(backend,
      |                                         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'ZImageModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<ZImageModel>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<ZImageModel>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<ZImageModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<ZImageModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ZImageModel, std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<ZImageModel>::__shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<ZImageModel>::shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:657:41: note: in instantiation of function template specialization 'std::make_shared<ZImageModel, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, const char (&)[22], SDVersion &>' requested here
  657 |                 diffusion_model  = std::make_shared<ZImageModel>(backend,
      |                                         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'FrozenCLIPEmbedderWithCustomWords' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<FrozenCLIPEmbedderWithCustomWords>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<FrozenCLIPEmbedderWithCustomWords>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<FrozenCLIPEmbedderWithCustomWords, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<FrozenCLIPEmbedderWithCustomWords, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, std::map<std::basic_string<char>, std::basic_string<char>> &, SDVersion &, PMVersion>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FrozenCLIPEmbedderWithCustomWords, std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, std::map<std::basic_string<char>, std::basic_string<char>> &, SDVersion &, PMVersion>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<FrozenCLIPEmbedderWithCustomWords>::__shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, std::map<std::basic_string<char>, std::basic_string<char>> &, SDVersion &, PMVersion>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<FrozenCLIPEmbedderWithCustomWords>::shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, std::map<std::basic_string<char>, std::basic_string<char>> &, SDVersion &, PMVersion>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:668:45: note: in instantiation of function template specialization 'std::make_shared<FrozenCLIPEmbedderWithCustomWords, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, std::map<std::basic_string<char>, std::basic_string<char>> &, SDVersion &, PMVersion>' requested here
  668 |                     cond_stage_model = std::make_shared<FrozenCLIPEmbedderWithCustomWords>(clip_backend,
      |                                             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'UNetModel' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<UNetModel>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<UNetModel>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<UNetModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<UNetModel, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<UNetModel, std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<UNetModel>::__shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<UNetModel>::shared_ptr<std::allocator<void>, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:681:40: note: in instantiation of function template specialization 'std::make_shared<UNetModel, ggml_backend *&, bool &, OrderedMap<std::basic_string<char>, TensorStorage> &, SDVersion &>' requested here
  681 |                 diffusion_model = std::make_shared<UNetModel>(backend,
      |                                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'CompVisVDenoiser' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<CompVisVDenoiser>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<CompVisVDenoiser>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<CompVisVDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<CompVisVDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CompVisVDenoiser, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<CompVisVDenoiser>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<CompVisVDenoiser>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:1045:37: note: in instantiation of function template specialization 'std::make_shared<CompVisVDenoiser>' requested here
 1045 |                     denoiser = std::make_shared<CompVisVDenoiser>();
      |                                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'EDMVDenoiser' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<EDMVDenoiser>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<EDMVDenoiser>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<EDMVDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<EDMVDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<EDMVDenoiser, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<EDMVDenoiser>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<EDMVDenoiser>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:1049:37: note: in instantiation of function template specialization 'std::make_shared<EDMVDenoiser>' requested here
 1049 |                     denoiser = std::make_shared<EDMVDenoiser>();
      |                                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'DiscreteFlowDenoiser' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<DiscreteFlowDenoiser>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<DiscreteFlowDenoiser>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<DiscreteFlowDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<DiscreteFlowDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<float &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<DiscreteFlowDenoiser, std::allocator<void>, float &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<DiscreteFlowDenoiser>::__shared_ptr<std::allocator<void>, float &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<DiscreteFlowDenoiser>::shared_ptr<std::allocator<void>, float &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:1053:37: note: in instantiation of function template specialization 'std::make_shared<DiscreteFlowDenoiser, float &>' requested here
 1053 |                     denoiser = std::make_shared<DiscreteFlowDenoiser>(flow_shift);
      |                                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'FluxFlowDenoiser' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<FluxFlowDenoiser>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<FluxFlowDenoiser>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<FluxFlowDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<FluxFlowDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<float &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<FluxFlowDenoiser, std::allocator<void>, float &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<FluxFlowDenoiser>::__shared_ptr<std::allocator<void>, float &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<FluxFlowDenoiser>::shared_ptr<std::allocator<void>, float &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:1058:37: note: in instantiation of function template specialization 'std::make_shared<FluxFlowDenoiser, float &>' requested here
 1058 |                     denoiser = std::make_shared<FluxFlowDenoiser>(flow_shift);
      |                                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'Flux2FlowDenoiser' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<Flux2FlowDenoiser>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<Flux2FlowDenoiser>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<Flux2FlowDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<Flux2FlowDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Flux2FlowDenoiser, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<Flux2FlowDenoiser>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<Flux2FlowDenoiser>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:1063:37: note: in instantiation of function template specialization 'std::make_shared<Flux2FlowDenoiser>' requested here
 1063 |                     denoiser = std::make_shared<Flux2FlowDenoiser>();
      |                                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'MultiLoraAdapter' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<MultiLoraAdapter>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<MultiLoraAdapter>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<MultiLoraAdapter, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<MultiLoraAdapter, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<std::vector<std::shared_ptr<LoraModel>> &>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<MultiLoraAdapter, std::allocator<void>, std::vector<std::shared_ptr<LoraModel>> &>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<MultiLoraAdapter>::__shared_ptr<std::allocator<void>, std::vector<std::shared_ptr<LoraModel>> &>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<MultiLoraAdapter>::shared_ptr<std::allocator<void>, std::vector<std::shared_ptr<LoraModel>> &>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:1231:44: note: in instantiation of function template specialization 'std::make_shared<MultiLoraAdapter, std::vector<std::shared_ptr<LoraModel>> &>' requested here
 1231 |             auto multi_lora_adapter = std::make_shared<MultiLoraAdapter>(cond_stage_lora_models);
      |                                            ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:7: warning: destructor called on non-final 'CompVisDenoiser' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  166 |       __pointer->~_Tp();
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/alloc_traits.h:819:9: note: in instantiation of function template specialization 'std::_Destroy<CompVisDenoiser>' requested here
  819 |         { std::_Destroy(__p); }
      |                ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:615:28: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<void>>::destroy<CompVisDenoiser>' requested here
  615 |         allocator_traits<_Alloc>::destroy(_M_impl._M_alloc(), _M_ptr());
      |                                   ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:601:2: note: in instantiation of member function 'std::_Sp_counted_ptr_inplace<CompVisDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  601 |         _Sp_counted_ptr_inplace(_Alloc __a, _Args&&... __args)
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:970:6: note: in instantiation of function template specialization 'std::_Sp_counted_ptr_inplace<CompVisDenoiser, std::allocator<void>, __gnu_cxx::_S_atomic>::_Sp_counted_ptr_inplace<>' requested here
  970 |             _Sp_cp_type(__a._M_a, std::forward<_Args>(__args)...);
      |             ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1719:14: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<CompVisDenoiser, std::allocator<void>>' requested here
 1719 |         : _M_ptr(), _M_refcount(_M_ptr, __tag, std::forward<_Args>(__args)...)
      |                     ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:463:4: note: in instantiation of function template specialization 'std::__shared_ptr<CompVisDenoiser>::__shared_ptr<std::allocator<void>>' requested here
  463 |         : __shared_ptr<_Tp>(__tag, std::forward<_Args>(__args)...)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:1007:14: note: in instantiation of function template specialization 'std::shared_ptr<CompVisDenoiser>::shared_ptr<std::allocator<void>>' requested here
 1007 |       return shared_ptr<_Tp>(_Sp_alloc_shared_tag<_Alloc>{__a},
      |              ^
sd/stable-diffusion.cpp:246:47: note: in instantiation of function template specialization 'std::make_shared<CompVisDenoiser>' requested here
  246 |     std::shared_ptr<Denoiser> denoiser = std::make_shared<CompVisDenoiser>();
      |                                               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_construct.h:166:19: note: qualify call to silence this warning
  166 |       __pointer->~_Tp();
      |                   ^
sd/stable-diffusion.cpp:175:13: warning: unused function 'accumulate_tile' [-Wunused-function]
  175 | static void accumulate_tile(const ggml_tensor* tile_denoised,
      |             ^~~~~~~~~~~~~~~
In file included from sd/stable-diffusion.cpp:19:
sd/tae.hpp:82:9: warning: private field 'z_channels' is not used [-Wunused-private-field]
   82 |     int z_channels  = 4;
      |         ^
sd/tae.hpp:125:9: warning: private field 'z_channels' is not used [-Wunused-private-field]
  125 |     int z_channels   = 4;
      |         ^
sd/tae.hpp:320:9: warning: private field 'z_channels' is not used [-Wunused-private-field]
  320 |     int z_channels  = 4;
      |         ^
sd/tae.hpp:373:9: warning: private field 'z_channels' is not used [-Wunused-private-field]
  373 |     int z_channels               = 4;
      |         ^
460 warnings generated.
clang++-21 -std=gnu++17 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -Isd -Isd/thirdparty -DGGML_USE_CPU -D_GNU_SOURCE -DGGML_MAX_NAME=128 -DGGML_R_PACKAGE -DGGML_USE_OPENMP  -include /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -fopenmp -fpic  -g -O3 -Wall -pedantic   -c sd/model.cpp -o sd/model.o
In file included from sd/model.cpp:18:
In file included from sd/gguf_reader.hpp:9:
/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/ggml.h:204:13: warning: 'GGML_ATTRIBUTE_FORMAT' macro redefined [-Wmacro-redefined]
  204 | #    define GGML_ATTRIBUTE_FORMAT(...) __attribute__((format(printf, __VA_ARGS__)))
      |             ^
/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h:53:9: note: previous definition is here
   53 | #define GGML_ATTRIBUTE_FORMAT(...)
      |         ^
In file included from sd/model.cpp:18:
sd/gguf_reader.hpp:183:46: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  183 |             LOG_ERROR("not a valid GGUF file");
      |                                              ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/model.cpp:18:
sd/gguf_reader.hpp:203:50: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  203 |                 LOG_ERROR("read meta data failed");
      |                                                  ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/model.cpp:460:12: warning: unused variable 'total_size' [-Wunused-variable]
  460 |     size_t total_size  = 0;
      |            ^~~~~~~~~~
sd/model.cpp:878:47: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  878 |             LOG_ERROR("Unsupported protocol\n");
      |                                               ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/model.cpp:942:58: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  942 |                         LOG_WARN("tensor name very large");
      |                                                          ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/model.cpp:1432:43: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1432 |             LOG_DEBUG("using mmap for I/O");
      |                                           ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/model.cpp:1575:96: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1575 |                             LOG_ERROR("read tensor data failed: too less memory for conversion");
      |                                                                                                ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/model.cpp:1688:50: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1688 |         LOG_ERROR("load tensors from file failed");
      |                                                  ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/model.cpp:1781:47: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1781 |             LOG_ERROR("ggml_new_tensor failed");
      |                                               ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/model.cpp:1808:33: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
 1808 |     LOG_INFO("load tensors done");
      |                                 ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
11 warnings generated.
clang++-21 -std=gnu++17 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -Isd -Isd/thirdparty -DGGML_USE_CPU -D_GNU_SOURCE -DGGML_MAX_NAME=128 -DGGML_R_PACKAGE -DGGML_USE_OPENMP  -include /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -fopenmp -fpic  -g -O3 -Wall -pedantic   -c sd/name_conversion.cpp -o sd/name_conversion.o
In file included from sd/name_conversion.cpp:4:
In file included from sd/name_conversion.h:6:
In file included from sd/model.h:14:
In file included from /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/ggml-backend.h:3:
/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/ggml.h:204:13: warning: 'GGML_ATTRIBUTE_FORMAT' macro redefined [-Wmacro-redefined]
  204 | #    define GGML_ATTRIBUTE_FORMAT(...) __attribute__((format(printf, __VA_ARGS__)))
      |             ^
/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h:53:9: note: previous definition is here
   53 | #define GGML_ATTRIBUTE_FORMAT(...)
      |         ^
1 warning generated.
clang++-21 -std=gnu++17 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -Isd -Isd/thirdparty -DGGML_USE_CPU -D_GNU_SOURCE -DGGML_MAX_NAME=128 -DGGML_R_PACKAGE -DGGML_USE_OPENMP  -include /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -fopenmp -fpic  -g -O3 -Wall -pedantic   -c sd/tokenize_util.cpp -o sd/tokenize_util.o
clang++-21 -std=gnu++17 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -Isd -Isd/thirdparty -DGGML_USE_CPU -D_GNU_SOURCE -DGGML_MAX_NAME=128 -DGGML_R_PACKAGE -DGGML_USE_OPENMP  -include /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -fopenmp -fpic  -g -O3 -Wall -pedantic   -c sd/upscaler.cpp -o sd/upscaler.o
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
In file included from sd/ggml_extend.hpp:27:
In file included from /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/ggml-alloc.h:3:
/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/ggml.h:204:13: warning: 'GGML_ATTRIBUTE_FORMAT' macro redefined [-Wmacro-redefined]
  204 | #    define GGML_ATTRIBUTE_FORMAT(...) __attribute__((format(printf, __VA_ARGS__)))
      |             ^
/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h:53:9: note: previous definition is here
   53 | #define GGML_ATTRIBUTE_FORMAT(...)
      |         ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
sd/ggml_extend.hpp:78:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   78 |             LOG_DEBUG(text);
      |                           ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
sd/ggml_extend.hpp:81:26: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   81 |             LOG_INFO(text);
      |                          ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
sd/ggml_extend.hpp:84:26: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   84 |             LOG_WARN(text);
      |                          ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
sd/ggml_extend.hpp:87:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   87 |             LOG_ERROR(text);
      |                           ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
sd/ggml_extend.hpp:90:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   90 |             LOG_DEBUG(text);
      |                           ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
sd/ggml_extend.hpp:294:13: warning: unused variable 'n0' [-Wunused-variable]
  294 |     int64_t n0 = tensor->ne[0];
      |             ^~
sd/ggml_extend.hpp:295:13: warning: unused variable 'n1' [-Wunused-variable]
  295 |     int64_t n1 = tensor->ne[1];
      |             ^~
sd/ggml_extend.hpp:296:13: warning: unused variable 'n2' [-Wunused-variable]
  296 |     int64_t n2 = tensor->ne[2];
      |             ^~
sd/ggml_extend.hpp:297:13: warning: unused variable 'n3' [-Wunused-variable]
  297 |     int64_t n3 = tensor->ne[3];
      |             ^~
sd/ggml_extend.hpp:339:13: warning: variable 'nelements' set but not used [-Wunused-but-set-variable]
  339 |     int32_t nelements = 1;
      |             ^
sd/ggml_extend.hpp:348:18: warning: unused variable 'bpe' [-Wunused-variable]
  348 |     const size_t bpe    = ggml_type_size(ggml_type(ttype));
      |                  ^~~
sd/ggml_extend.hpp:388:39: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  388 |         LOG_ERROR("ggml_init() failed");
      |                                       ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
sd/ggml_extend.hpp:894:39: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  894 |         LOG_ERROR("ggml_init() failed");
      |                                       ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
sd/ggml_extend.hpp:1154:13: warning: unused variable 'OC' [-Wunused-variable]
 1154 |     int64_t OC = w->ne[3] / IC;
      |             ^~
sd/ggml_extend.hpp:1155:13: warning: unused variable 'N' [-Wunused-variable]
 1155 |     int64_t N  = x->ne[3] / IC;
      |             ^
In file included from sd/upscaler.cpp:1:
sd/esrgan.hpp:335:69: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  335 |             LOG_ERROR("load esrgan tensors from model loader failed");
      |                                                                     ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/upscaler.cpp:53:42: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   53 |             LOG_DEBUG("Using CPU backend");
      |                                          ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
sd/upscaler.cpp:83:43: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   83 |             LOG_ERROR("ggml_init() failed");
      |                                           ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Linear' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Linear, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/ggml_extend.hpp:2649:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Linear, void>' requested here
 2649 |             blocks[in_proj_name] = std::shared_ptr<GGMLBlock>(new Linear(embed_dim, embed_dim * 3, qkv_proj_bias));
      |                                    ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Linear' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Linear *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Linear *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Linear, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/ggml_extend.hpp:2649:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Linear, void>' requested here
 2649 |             blocks[in_proj_name] = std::shared_ptr<GGMLBlock>(new Linear(embed_dim, embed_dim * 3, qkv_proj_bias));
      |                                    ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Conv2d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv2d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv2d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Conv2d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/esrgan.hpp:23:27: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Conv2d, void>' requested here
   23 |         blocks["conv1"] = std::shared_ptr<GGMLBlock>(new Conv2d(num_feat, num_grow_ch, {3, 3}, {1, 1}, {1, 1}));
      |                           ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Conv2d' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Conv2d *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Conv2d *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv2d *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Conv2d *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Conv2d, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/esrgan.hpp:23:27: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Conv2d, void>' requested here
   23 |         blocks["conv1"] = std::shared_ptr<GGMLBlock>(new Conv2d(num_feat, num_grow_ch, {3, 3}, {1, 1}, {1, 1}));
      |                           ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'ResidualDenseBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResidualDenseBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResidualDenseBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<ResidualDenseBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/esrgan.hpp:62:26: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<ResidualDenseBlock, void>' requested here
   62 |         blocks["rdb1"] = std::shared_ptr<GGMLBlock>(new ResidualDenseBlock(num_feat, num_grow_ch));
      |                          ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'ResidualDenseBlock' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<ResidualDenseBlock *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<ResidualDenseBlock *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResidualDenseBlock *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<ResidualDenseBlock *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<ResidualDenseBlock, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/esrgan.hpp:62:26: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<ResidualDenseBlock, void>' requested here
   62 |         blocks["rdb1"] = std::shared_ptr<GGMLBlock>(new ResidualDenseBlock(num_feat, num_grow_ch));
      |                          ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'RRDB' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RRDB *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RRDB *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<RRDB, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/esrgan.hpp:99:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<RRDB, void>' requested here
   99 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new RRDB(num_feat, num_grow_ch));
      |                                ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'RRDB' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<RRDB *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<RRDB *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RRDB *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<RRDB *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<RRDB, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/esrgan.hpp:99:32: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<RRDB, void>' requested here
   99 |             blocks[name]     = std::shared_ptr<GGMLBlock>(new RRDB(num_feat, num_grow_ch));
      |                                ^
In file included from sd/upscaler.cpp:1:
In file included from sd/esrgan.hpp:4:
In file included from sd/ggml_extend.hpp:18:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:80:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/unique_ptr.h:92:2: warning: delete called on non-final 'RRDBNet' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
   92 |         delete __ptr;
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/unique_ptr.h:398:4: note: in instantiation of member function 'std::default_delete<RRDBNet>::operator()' requested here
  398 |           get_deleter()(std::move(__ptr));
      |           ^
sd/esrgan.hpp:157:5: note: in instantiation of member function 'std::unique_ptr<RRDBNet>::~unique_ptr' requested here
  157 |     ESRGAN(ggml_backend_t backend,
      |     ^
28 warnings generated.
clang++-21 -std=gnu++17 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -Isd -Isd/thirdparty -DGGML_USE_CPU -D_GNU_SOURCE -DGGML_MAX_NAME=128 -DGGML_R_PACKAGE -DGGML_USE_OPENMP  -include /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -fopenmp -fpic  -g -O3 -Wall -pedantic   -c sd/util.cpp -o sd/util.o
In file included from sd/util.cpp:16:
In file included from sd/preprocessing.hpp:4:
In file included from sd/ggml_extend.hpp:27:
In file included from /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/ggml-alloc.h:3:
/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/ggml.h:204:13: warning: 'GGML_ATTRIBUTE_FORMAT' macro redefined [-Wmacro-redefined]
  204 | #    define GGML_ATTRIBUTE_FORMAT(...) __attribute__((format(printf, __VA_ARGS__)))
      |             ^
/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h:53:9: note: previous definition is here
   53 | #define GGML_ATTRIBUTE_FORMAT(...)
      |         ^
In file included from sd/util.cpp:16:
In file included from sd/preprocessing.hpp:4:
sd/ggml_extend.hpp:78:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   78 |             LOG_DEBUG(text);
      |                           ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/util.cpp:16:
In file included from sd/preprocessing.hpp:4:
sd/ggml_extend.hpp:81:26: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   81 |             LOG_INFO(text);
      |                          ^
sd/util.h:90:9: note: macro 'LOG_INFO' defined here
   90 | #define LOG_INFO(format, ...) log_printf(SD_LOG_INFO, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/util.cpp:16:
In file included from sd/preprocessing.hpp:4:
sd/ggml_extend.hpp:84:26: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   84 |             LOG_WARN(text);
      |                          ^
sd/util.h:91:9: note: macro 'LOG_WARN' defined here
   91 | #define LOG_WARN(format, ...) log_printf(SD_LOG_WARN, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/util.cpp:16:
In file included from sd/preprocessing.hpp:4:
sd/ggml_extend.hpp:87:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   87 |             LOG_ERROR(text);
      |                           ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/util.cpp:16:
In file included from sd/preprocessing.hpp:4:
sd/ggml_extend.hpp:90:27: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
   90 |             LOG_DEBUG(text);
      |                           ^
sd/util.h:89:9: note: macro 'LOG_DEBUG' defined here
   89 | #define LOG_DEBUG(format, ...) log_printf(SD_LOG_DEBUG, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/util.cpp:16:
In file included from sd/preprocessing.hpp:4:
sd/ggml_extend.hpp:294:13: warning: unused variable 'n0' [-Wunused-variable]
  294 |     int64_t n0 = tensor->ne[0];
      |             ^~
sd/ggml_extend.hpp:295:13: warning: unused variable 'n1' [-Wunused-variable]
  295 |     int64_t n1 = tensor->ne[1];
      |             ^~
sd/ggml_extend.hpp:296:13: warning: unused variable 'n2' [-Wunused-variable]
  296 |     int64_t n2 = tensor->ne[2];
      |             ^~
sd/ggml_extend.hpp:297:13: warning: unused variable 'n3' [-Wunused-variable]
  297 |     int64_t n3 = tensor->ne[3];
      |             ^~
sd/ggml_extend.hpp:339:13: warning: variable 'nelements' set but not used [-Wunused-but-set-variable]
  339 |     int32_t nelements = 1;
      |             ^
sd/ggml_extend.hpp:348:18: warning: unused variable 'bpe' [-Wunused-variable]
  348 |     const size_t bpe    = ggml_type_size(ggml_type(ttype));
      |                  ^~~
sd/ggml_extend.hpp:388:39: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  388 |         LOG_ERROR("ggml_init() failed");
      |                                       ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/util.cpp:16:
In file included from sd/preprocessing.hpp:4:
sd/ggml_extend.hpp:894:39: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  894 |         LOG_ERROR("ggml_init() failed");
      |                                       ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/util.cpp:16:
In file included from sd/preprocessing.hpp:4:
sd/ggml_extend.hpp:1154:13: warning: unused variable 'OC' [-Wunused-variable]
 1154 |     int64_t OC = w->ne[3] / IC;
      |             ^~
sd/ggml_extend.hpp:1155:13: warning: unused variable 'N' [-Wunused-variable]
 1155 |     int64_t N  = x->ne[3] / IC;
      |             ^
In file included from sd/util.cpp:16:
sd/preprocessing.hpp:173:39: warning: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Wvariadic-macro-arguments-omitted]
  173 |         LOG_ERROR("ggml_init() failed");
      |                                       ^
sd/util.h:92:9: note: macro 'LOG_ERROR' defined here
   92 | #define LOG_ERROR(format, ...) log_printf(SD_LOG_ERROR, __FILE__, __LINE__, format __VA_OPT__(,) __VA_ARGS__)
      |         ^
In file included from sd/util.cpp:1:
In file included from sd/util.h:5:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:918:8: warning: delete called on non-final 'Linear' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  918 |               delete __p;
      |               ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Linear, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/ggml_extend.hpp:2649:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Linear, void>' requested here
 2649 |             blocks[in_proj_name] = std::shared_ptr<GGMLBlock>(new Linear(embed_dim, embed_dim * 3, qkv_proj_bias));
      |                                    ^
In file included from sd/util.cpp:1:
In file included from sd/util.h:5:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/memory:82:
In file included from /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:53:
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:427:9: warning: delete called on non-final 'Linear' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
  427 |       { delete _M_ptr; }
      |         ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:422:7: note: in instantiation of member function 'std::_Sp_counted_ptr<Linear *, __gnu_cxx::_S_atomic>::_M_dispose' requested here
  422 |       _Sp_counted_ptr(_Ptr __p) noexcept
      |       ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:914:20: note: in instantiation of member function 'std::_Sp_counted_ptr<Linear *, __gnu_cxx::_S_atomic>::_Sp_counted_ptr' requested here
  914 |               _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
      |                           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:925:4: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
  925 |         : __shared_count(__p)
      |           ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr_base.h:1476:17: note: in instantiation of function template specialization 'std::__shared_count<>::__shared_count<Linear *>' requested here
 1476 |         : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
      |                        ^
/usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/shared_ptr.h:213:25: note: in instantiation of function template specialization 'std::__shared_ptr<GGMLBlock>::__shared_ptr<Linear, void>' requested here
  213 |         shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
      |                                ^
sd/ggml_extend.hpp:2649:36: note: in instantiation of function template specialization 'std::shared_ptr<GGMLBlock>::shared_ptr<Linear, void>' requested here
 2649 |             blocks[in_proj_name] = std::shared_ptr<GGMLBlock>(new Linear(embed_dim, embed_dim * 3, qkv_proj_bias));
      |                                    ^
19 warnings generated.
clang++-21 -std=gnu++17 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -Isd -Isd/thirdparty -DGGML_USE_CPU -D_GNU_SOURCE -DGGML_MAX_NAME=128 -DGGML_R_PACKAGE -DGGML_USE_OPENMP  -include /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include/r_ggml_compat.h -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -fopenmp -fpic  -g -O3 -Wall -pedantic   -c sd/version.cpp -o sd/version.o
clang-21 -std=gnu23 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -Isd -Isd/thirdparty -DGGML_USE_CPU -D_GNU_SOURCE -DGGML_MAX_NAME=128 -DGGML_R_PACKAGE -DGGML_USE_OPENMP  -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -fopenmp -fpic  -g -O3 -Wall -pedantic -c sd/thirdparty/zip.c -o sd/thirdparty/zip.o
clang++-21 -std=gnu++17 -shared -L/home/hornik/tmp/R.check/r-devel-clang/Work/build/lib -Wl,-O1 -o sd2R.so RcppExports.o sd2R_interface.o sd/stable-diffusion.o sd/model.o sd/name_conversion.o sd/tokenize_util.o sd/upscaler.o sd/util.o sd/version.o sd/thirdparty/zip.o -L/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/ggmlR/lib -lggml -fopenmp -lpthread -lm -L/home/hornik/tmp/R.check/r-devel-clang/Work/build/lib -lR
make[1]: Leaving directory '/home/hornik/tmp/scratch/RtmpkzBKFW/R.INSTALL5bc72142cd79d/sd2R/src'
make[1]: Entering directory '/home/hornik/tmp/scratch/RtmpkzBKFW/R.INSTALL5bc72142cd79d/sd2R/src'
make[1]: Leaving directory '/home/hornik/tmp/scratch/RtmpkzBKFW/R.INSTALL5bc72142cd79d/sd2R/src'
installing to /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/00LOCK-sd2R/00new/sd2R/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** checking absolute paths in shared objects and dynamic libraries
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (sd2R)