@@ -687,7 +687,7 @@ static cmd_params parse_cmd_params(int argc, char ** argv) {
687687 invalid_param = true ;
688688 break ;
689689 }
690- auto value = argv[i];
690+ auto * value = argv[i];
691691 /* static */ std::map<std::string, ggml_backend_buffer_type_t > buft_list;
692692 if (buft_list.empty ()) {
693693 // enumerate all the devices and add their buffer types to the list
@@ -719,7 +719,7 @@ static cmd_params parse_cmd_params(int argc, char ** argv) {
719719 // memory leak present in the implementation
720720 // over in arg.cpp. Acceptable because we
721721 // only parse these args once in this program.
722- auto override_group = value;
722+ auto * override_group = value;
723723 if (value[override_group_span_len] == ' \0 ' ) {
724724 value = &value[override_group_span_len];
725725 last_group = true ;
@@ -730,7 +730,7 @@ static cmd_params parse_cmd_params(int argc, char ** argv) {
730730 std::vector<llama_model_tensor_buft_override> group_tensor_buft_overrides{};
731731 auto override_span_len = std::strcspn (override_group, " ;" );
732732 while (override_span_len > 0 ) {
733- auto override = override_group;
733+ auto * override = override_group;
734734 if (override_group[override_span_len] != ' \0 ' ) {
735735 override_group[override_span_len] = ' \0 ' ;
736736 override_group = &override_group[override_span_len + 1 ];
@@ -743,9 +743,10 @@ static cmd_params parse_cmd_params(int argc, char ** argv) {
743743 break ;
744744 }
745745 override [tensor_name_span_len] = ' \0 ' ;
746- auto tensor_name = override ;
747- auto buffer_type = &override [tensor_name_span_len + 1 ];
746+ auto * tensor_name = override ;
747+ auto * buffer_type = &override [tensor_name_span_len + 1 ];
748748 if (buft_list.find (buffer_type) == buft_list.end ()) {
749+ printf (" error: unrecognized buffer type '%s'\n " , buffer_type);
749750 printf (" Available buffer types:\n " );
750751 for (const auto & it : buft_list) {
751752 printf (" %s\n " , ggml_backend_buft_name (it.second ));
@@ -1826,10 +1827,11 @@ int main(int argc, char ** argv) {
18261827 fprintf (stderr, " warning: sanitizer enabled, performance may be affected\n " );
18271828#endif
18281829
1829- cmd_params params = parse_cmd_params (argc, argv);
1830-
18311830 // initialize backends
18321831 ggml_backend_load_all ();
1832+
1833+ cmd_params params = parse_cmd_params (argc, argv);
1834+
18331835 auto * cpu_dev = ggml_backend_dev_by_type (GGML_BACKEND_DEVICE_TYPE_CPU);
18341836 if (!cpu_dev) {
18351837 fprintf (stderr, " %s: error: CPU backend is not loaded\n " , __func__);
0 commit comments