@@ -92,8 +92,8 @@ FOSSIL_TEST(cpp_parse_command) {
9292 fossil_io_parser_argument_t *argument = parser.add_argument (command, " test_arg" , " ta" , FOSSIL_IO_PARSER_STRING, NULL , 0 );
9393 FOSSIL_TEST_ASSUME (argument != NULL , " Argument should be added successfully" );
9494
95- char *argv[] = {" program" , " test_command" , " test_arg" , " test_value" };
96- parser.parse (palette, 4 , argv);
95+ const char *argv[] = {" program" , " test_command" , " test_arg" , " test_value" };
96+ parser.parse (palette, 4 , const_cast < char **>( argv) );
9797
9898 FOSSIL_TEST_ASSUME (command->arguments ->value != NULL , " Argument value should be set" );
9999 parser.free (palette);
@@ -294,8 +294,8 @@ FOSSIL_TEST(cpp_duplicate_argument_short_name) {
294294
295295FOSSIL_TEST (cpp_parse_null_palette) {
296296 fossil::io::Parser parser;
297- char *argv[] = {" program" , " test_command" };
298- parser.parse (NULL , 2 , argv);
297+ const char *argv[] = {" program" , " test_command" };
298+ parser.parse (NULL , 2 , const_cast < char **>( argv) );
299299 FOSSIL_TEST_ASSUME (true , " Parse with NULL palette completed without crashing" );
300300} // end case
301301
@@ -312,8 +312,8 @@ FOSSIL_TEST(cpp_parse_zero_argc) {
312312 fossil::io::Parser parser;
313313 fossil_io_parser_palette_t *palette = parser.create_palette (" test_palette" , " Test Description" );
314314 FOSSIL_TEST_ASSUME (palette != NULL , " Palette should be created successfully" );
315- char *argv[] = {" program" };
316- parser.parse (palette, 1 , argv);
315+ const char *argv[] = {" program" };
316+ parser.parse (palette, 1 , const_cast < char **>( argv) );
317317 FOSSIL_TEST_ASSUME (true , " Parse with zero argc handled gracefully" );
318318 parser.free (palette);
319319} // end case
@@ -325,8 +325,8 @@ FOSSIL_TEST(cpp_parse_help_flag) {
325325 fossil_io_parser_command_t *command = parser.add_command (palette, " test_command" , " tc" , " Test Command Description" );
326326 FOSSIL_TEST_ASSUME (command != NULL , " Command should be added successfully" );
327327
328- char *argv[] = {" program" , " --help" };
329- parser.parse (palette, 2 , argv);
328+ const char *argv[] = {" program" , " --help" };
329+ parser.parse (palette, 2 , const_cast < char **>( argv) );
330330
331331 FOSSIL_TEST_ASSUME (true , " Help flag parsed without crashing" );
332332 parser.free (palette);
@@ -337,8 +337,8 @@ FOSSIL_TEST(cpp_parse_version_flag) {
337337 fossil_io_parser_palette_t *palette = parser.create_palette (" test_palette" , " Test Description" );
338338 FOSSIL_TEST_ASSUME (palette != NULL , " Palette should be created successfully" );
339339
340- char *argv[] = {" program" , " --version" };
341- parser.parse (palette, 2 , argv);
340+ const char *argv[] = {" program" , " --version" };
341+ parser.parse (palette, 2 , const_cast < char **>( argv) );
342342
343343 FOSSIL_TEST_ASSUME (true , " Version flag parsed without crashing" );
344344 parser.free (palette);
@@ -349,8 +349,8 @@ FOSSIL_TEST(cpp_parse_dry_run_flag) {
349349 fossil_io_parser_palette_t *palette = parser.create_palette (" test_palette" , " Test Description" );
350350 FOSSIL_TEST_ASSUME (palette != NULL , " Palette should be created successfully" );
351351
352- char *argv[] = {" program" , " --dry-run" , " test_command" };
353- parser.parse (palette, 3 , argv);
352+ const char *argv[] = {" program" , " --dry-run" , " test_command" };
353+ parser.parse (palette, 3 , const_cast < char **>( argv) );
354354
355355 FOSSIL_TEST_ASSUME (FOSSIL_CLI_TOGGLE_DRY_RUN == 1 , " Dry-run flag should be set" );
356356 parser.free (palette);
@@ -361,8 +361,8 @@ FOSSIL_TEST(cpp_parse_verbose_flag) {
361361 fossil_io_parser_palette_t *palette = parser.create_palette (" test_palette" , " Test Description" );
362362 FOSSIL_TEST_ASSUME (palette != NULL , " Palette should be created successfully" );
363363
364- char *argv[] = {" program" , " --verbose" , " test_command" };
365- parser.parse (palette, 3 , argv);
364+ const char *argv[] = {" program" , " --verbose" , " test_command" };
365+ parser.parse (palette, 3 , const_cast < char **>( argv) );
366366
367367 FOSSIL_TEST_ASSUME (FOSSIL_CLI_TOGGLE_VERBOSE == 1 , " Verbose flag should be set" );
368368 parser.free (palette);
@@ -375,8 +375,8 @@ FOSSIL_TEST(cpp_parse_unknown_command) {
375375 fossil_io_parser_command_t *command = parser.add_command (palette, " valid_command" , " vc" , " Valid Command Description" );
376376 FOSSIL_TEST_ASSUME (command != NULL , " Valid command should be added successfully" );
377377
378- char *argv[] = {" program" , " unknown_command" };
379- parser.parse (palette, 2 , argv);
378+ const char *argv[] = {" program" , " unknown_command" };
379+ parser.parse (palette, 2 , const_cast < char **>( argv) );
380380
381381 FOSSIL_TEST_ASSUME (true , " Unknown command handled gracefully" );
382382 parser.free (palette);
@@ -389,11 +389,11 @@ FOSSIL_TEST(cpp_argument_with_combo_options) {
389389 fossil_io_parser_command_t *command = parser.add_command (palette, " test_command" , " tc" , " Test Command Description" );
390390 FOSSIL_TEST_ASSUME (command != NULL , " Command should be added successfully" );
391391
392- char *combo_options[] = {" option1" , " option2" , " option3" };
393- fossil_io_parser_argument_t *argument = parser.add_argument (command, " combo_arg" , " ca" , FOSSIL_IO_PARSER_STRING, combo_options, 3 );
392+ const char *combo_options[] = {" option1" , " option2" , " option3" };
393+ fossil_io_parser_argument_t *argument = parser.add_argument (command, " combo_arg" , " ca" , FOSSIL_IO_PARSER_STRING, const_cast < char **>( combo_options) , 3 );
394394
395395 FOSSIL_TEST_ASSUME (argument != NULL , " Argument with combo options should be added" );
396- FOSSIL_TEST_ASSUME (argument->combo_options == combo_options, " Combo options should be set correctly" );
396+ FOSSIL_TEST_ASSUME (argument->combo_options == const_cast < char **>( combo_options) , " Combo options should be set correctly" );
397397 FOSSIL_TEST_ASSUME (argument->combo_count == 3 , " Combo count should be 3" );
398398
399399 parser.free (palette);
@@ -436,8 +436,8 @@ FOSSIL_TEST(cpp_parse_bool_argument_true) {
436436 fossil_io_parser_argument_t *argument = parser.add_argument (command, " bool_arg" , " ba" , FOSSIL_IO_PARSER_BOOL, NULL , 0 );
437437 FOSSIL_TEST_ASSUME (argument != NULL , " Boolean argument should be added successfully" );
438438
439- char *argv[] = {" program" , " test_command" , " bool_arg" , " true" };
440- parser.parse (palette, 4 , argv);
439+ const char *argv[] = {" program" , " test_command" , " bool_arg" , " true" };
440+ parser.parse (palette, 4 , const_cast < char **>( argv) );
441441
442442 FOSSIL_TEST_ASSUME (command->arguments ->value != NULL , " Boolean argument value should be set" );
443443 FOSSIL_TEST_ASSUME (*(int *)command->arguments ->value == 1 , " Boolean argument should be true" );
@@ -454,8 +454,8 @@ FOSSIL_TEST(cpp_parse_bool_argument_false) {
454454 fossil_io_parser_argument_t *argument = parser.add_argument (command, " bool_arg" , " ba" , FOSSIL_IO_PARSER_BOOL, NULL , 0 );
455455 FOSSIL_TEST_ASSUME (argument != NULL , " Boolean argument should be added successfully" );
456456
457- char *argv[] = {" program" , " test_command" , " bool_arg" , " false" };
458- parser.parse (palette, 4 , argv);
457+ const char *argv[] = {" program" , " test_command" , " bool_arg" , " false" };
458+ parser.parse (palette, 4 , const_cast < char **>( argv) );
459459
460460 FOSSIL_TEST_ASSUME (command->arguments ->value != NULL , " Boolean argument value should be set" );
461461 FOSSIL_TEST_ASSUME (*(int *)command->arguments ->value == 0 , " Boolean argument should be false" );
@@ -472,8 +472,8 @@ FOSSIL_TEST(cpp_parse_int_argument) {
472472 fossil_io_parser_argument_t *argument = parser.add_argument (command, " int_arg" , " ia" , FOSSIL_IO_PARSER_INT, NULL , 0 );
473473 FOSSIL_TEST_ASSUME (argument != NULL , " Integer argument should be added successfully" );
474474
475- char *argv[] = {" program" , " test_command" , " int_arg" , " 42" };
476- parser.parse (palette, 4 , argv);
475+ const char *argv[] = {" program" , " test_command" , " int_arg" , " 42" };
476+ parser.parse (palette, 4 , const_cast < char **>( argv) );
477477
478478 FOSSIL_TEST_ASSUME (command->arguments ->value != NULL , " Integer argument value should be set" );
479479 FOSSIL_TEST_ASSUME (*(int *)command->arguments ->value == 42 , " Integer argument should be 42" );
@@ -490,8 +490,8 @@ FOSSIL_TEST(cpp_parse_uint_argument) {
490490 fossil_io_parser_argument_t *argument = parser.add_argument (command, " uint_arg" , " ua" , FOSSIL_IO_PARSER_UINT, NULL , 0 );
491491 FOSSIL_TEST_ASSUME (argument != NULL , " Unsigned integer argument should be added successfully" );
492492
493- char *argv[] = {" program" , " test_command" , " uint_arg" , " 100" };
494- parser.parse (palette, 4 , argv);
493+ const char *argv[] = {" program" , " test_command" , " uint_arg" , " 100" };
494+ parser.parse (palette, 4 , const_cast < char **>( argv) );
495495
496496 FOSSIL_TEST_ASSUME (command->arguments ->value != NULL , " Unsigned integer argument value should be set" );
497497 FOSSIL_TEST_ASSUME (*(unsigned int *)command->arguments ->value == 100 , " Unsigned integer argument should be 100" );
@@ -508,8 +508,8 @@ FOSSIL_TEST(cpp_parse_float_argument) {
508508 fossil_io_parser_argument_t *argument = parser.add_argument (command, " float_arg" , " fa" , FOSSIL_IO_PARSER_FLOAT, NULL , 0 );
509509 FOSSIL_TEST_ASSUME (argument != NULL , " Float argument should be added successfully" );
510510
511- char *argv[] = {" program" , " test_command" , " float_arg" , " 3.14" };
512- parser.parse (palette, 4 , argv);
511+ const char *argv[] = {" program" , " test_command" , " float_arg" , " 3.14" };
512+ parser.parse (palette, 4 , const_cast < char **>( argv) );
513513
514514 FOSSIL_TEST_ASSUME (command->arguments ->value != NULL , " Float argument value should be set" );
515515 FOSSIL_TEST_ASSUME (fabs (*(float *)command->arguments ->value - 3 .14f ) < 0 .001f , " Float argument should be approximately 3.14" );
@@ -526,8 +526,8 @@ FOSSIL_TEST(cpp_parse_hex_argument) {
526526 fossil_io_parser_argument_t *argument = parser.add_argument (command, " hex_arg" , " ha" , FOSSIL_IO_PARSER_HEX, NULL , 0 );
527527 FOSSIL_TEST_ASSUME (argument != NULL , " Hex argument should be added successfully" );
528528
529- char *argv[] = {" program" , " test_command" , " hex_arg" , " 0xFF" };
530- parser.parse (palette, 4 , argv);
529+ const char *argv[] = {" program" , " test_command" , " hex_arg" , " 0xFF" };
530+ parser.parse (palette, 4 , const_cast < char **>( argv) );
531531
532532 FOSSIL_TEST_ASSUME (command->arguments ->value != NULL , " Hex argument value should be set" );
533533 FOSSIL_TEST_ASSUME (*(unsigned int *)command->arguments ->value == 255 , " Hex argument should be 255 (0xFF)" );
@@ -544,8 +544,8 @@ FOSSIL_TEST(cpp_parse_oct_argument) {
544544 fossil_io_parser_argument_t *argument = parser.add_argument (command, " oct_arg" , " oa" , FOSSIL_IO_PARSER_OCT, NULL , 0 );
545545 FOSSIL_TEST_ASSUME (argument != NULL , " Octal argument should be added successfully" );
546546
547- char *argv[] = {" program" , " test_command" , " oct_arg" , " 0777" };
548- parser.parse (palette, 4 , argv);
547+ const char *argv[] = {" program" , " test_command" , " oct_arg" , " 0777" };
548+ parser.parse (palette, 4 , const_cast < char **>( argv) );
549549
550550 FOSSIL_TEST_ASSUME (command->arguments ->value != NULL , " Octal argument value should be set" );
551551 FOSSIL_TEST_ASSUME (*(unsigned int *)command->arguments ->value == 511 , " Octal argument should be 511 (0777)" );
@@ -560,8 +560,8 @@ FOSSIL_TEST(cpp_parse_help_with_specificpp_command) {
560560 fossil_io_parser_command_t *command = parser.add_command (palette, " test_command" , " tc" , " Test Command Description" );
561561 FOSSIL_TEST_ASSUME (command != NULL , " Command should be added successfully" );
562562
563- char *argv[] = {" program" , " --help" , " test_command" };
564- parser.parse (palette, 3 , argv);
563+ const char *argv[] = {" program" , " --help" , " test_command" };
564+ parser.parse (palette, 3 , const_cast < char **>( argv) );
565565
566566 FOSSIL_TEST_ASSUME (true , " Help with specific command parsed without crashing" );
567567 parser.free (palette);
@@ -572,8 +572,8 @@ FOSSIL_TEST(cpp_parse_color_enable) {
572572 fossil_io_parser_palette_t *palette = parser.create_palette (" test_palette" , " Test Description" );
573573 FOSSIL_TEST_ASSUME (palette != NULL , " Palette should be created successfully" );
574574
575- char *argv[] = {" program" , " color=enable" };
576- parser.parse (palette, 2 , argv);
575+ const char *argv[] = {" program" , " color=enable" };
576+ parser.parse (palette, 2 , const_cast < char **>( argv) );
577577
578578 FOSSIL_TEST_ASSUME (FOSSIL_IO_COLOR_ENABLE == 1 , " Color should be enabled" );
579579 parser.free (palette);
@@ -584,8 +584,8 @@ FOSSIL_TEST(cpp_parse_color_disable) {
584584 fossil_io_parser_palette_t *palette = parser.create_palette (" test_palette" , " Test Description" );
585585 FOSSIL_TEST_ASSUME (palette != NULL , " Palette should be created successfully" );
586586
587- char *argv[] = {" program" , " color=disable" };
588- parser.parse (palette, 2 , argv);
587+ const char *argv[] = {" program" , " color=disable" };
588+ parser.parse (palette, 2 , const_cast < char **>( argv) );
589589
590590 FOSSIL_TEST_ASSUME (FOSSIL_IO_COLOR_ENABLE == 0 , " Color should be disabled" );
591591 parser.free (palette);
@@ -650,8 +650,8 @@ FOSSIL_TEST(cpp_parse_missing_bool_value) {
650650 fossil_io_parser_argument_t *argument = parser.add_argument (command, " bool_arg" , " ba" , FOSSIL_IO_PARSER_BOOL, NULL , 0 );
651651 FOSSIL_TEST_ASSUME (argument != NULL , " Boolean argument should be added successfully" );
652652
653- char *argv[] = {" program" , " test_command" , " bool_arg" };
654- parser.parse (palette, 3 , argv);
653+ const char *argv[] = {" program" , " test_command" , " bool_arg" };
654+ parser.parse (palette, 3 , const_cast < char **>( argv) );
655655
656656 FOSSIL_TEST_ASSUME (true , " Missing boolean value handled gracefully" );
657657 parser.free (palette);
@@ -666,8 +666,8 @@ FOSSIL_TEST(cpp_parse_missing_string_value) {
666666 fossil_io_parser_argument_t *argument = parser.add_argument (command, " string_arg" , " sa" , FOSSIL_IO_PARSER_STRING, NULL , 0 );
667667 FOSSIL_TEST_ASSUME (argument != NULL , " String argument should be added successfully" );
668668
669- char *argv[] = {" program" , " test_command" , " string_arg" };
670- parser.parse (palette, 3 , argv);
669+ const char *argv[] = {" program" , " test_command" , " string_arg" };
670+ parser.parse (palette, 3 , const_cast < char **>( argv) );
671671
672672 FOSSIL_TEST_ASSUME (true , " Missing string value handled gracefully" );
673673 parser.free (palette);
@@ -682,8 +682,8 @@ FOSSIL_TEST(cpp_parse_missing_int_value) {
682682 fossil_io_parser_argument_t *argument = parser.add_argument (command, " int_arg" , " ia" , FOSSIL_IO_PARSER_INT, NULL , 0 );
683683 FOSSIL_TEST_ASSUME (argument != NULL , " Integer argument should be added successfully" );
684684
685- char *argv[] = {" program" , " test_command" , " int_arg" };
686- parser.parse (palette, 3 , argv);
685+ const char *argv[] = {" program" , " test_command" , " int_arg" };
686+ parser.parse (palette, 3 , const_cast < char **>( argv) );
687687
688688 FOSSIL_TEST_ASSUME (true , " Missing integer value handled gracefully" );
689689 parser.free (palette);
@@ -698,8 +698,8 @@ FOSSIL_TEST(cpp_parse_bool_yes_no) {
698698 fossil_io_parser_argument_t *argument = parser.add_argument (command, " bool_arg" , " ba" , FOSSIL_IO_PARSER_BOOL, NULL , 0 );
699699 FOSSIL_TEST_ASSUME (argument != NULL , " Boolean argument should be added successfully" );
700700
701- char *argv[] = {" program" , " test_command" , " bool_arg" , " yes" };
702- parser.parse (palette, 4 , argv);
701+ const char *argv[] = {" program" , " test_command" , " bool_arg" , " yes" };
702+ parser.parse (palette, 4 , const_cast < char **>( argv) );
703703
704704 FOSSIL_TEST_ASSUME (command->arguments ->value != NULL , " Boolean argument value should be set" );
705705 FOSSIL_TEST_ASSUME (*(int *)command->arguments ->value == 1 , " Boolean argument should be true for 'yes'" );
@@ -718,8 +718,8 @@ FOSSIL_TEST(cpp_parse_combined_flags) {
718718 fossil_io_parser_command_t *command = parser.add_command (palette, " test_command" , " tc" , " Test Command Description" );
719719 FOSSIL_TEST_ASSUME (command != NULL , " Command should be added successfully" );
720720
721- char *argv[] = {" program" , " --dry-run" , " --verbose" , " test_command" };
722- parser.parse (palette, 4 , argv);
721+ const char *argv[] = {" program" , " --dry-run" , " --verbose" , " test_command" };
722+ parser.parse (palette, 4 , const_cast < char **>( argv) );
723723
724724 FOSSIL_TEST_ASSUME (FOSSIL_CLI_TOGGLE_DRY_RUN == 1 , " Dry-run flag should be set" );
725725 FOSSIL_TEST_ASSUME (FOSSIL_CLI_TOGGLE_VERBOSE == 1 , " Verbose flag should be set" );
0 commit comments