Weird sketch size/memory/compiler (?) related issue

Sometimes, if you turn up the warning level to "ALL", you will get warning that point to programming mistakes. Maybe one of these warnings is significant:

/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino: In function 'void ChangeBluetoothCheck()':
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:286:49: warning: embedded '\0' in format [-Wformat-contains-nul]
     sprintf(at_cmd, "AT+NAME%s\0", bluetoothName);
                                                 ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:298:12: warning: unused variable 'c' [-Wunused-variable]
       char c = BTSerial.read();
            ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:311:42: warning: embedded '\0' in format [-Wformat-contains-nul]
     sprintf(at_pin_cmd, "AT+PIN%s\0", pin);
                                          ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:324:12: warning: unused variable 'c' [-Wunused-variable]
       char c = BTSerial.read();
            ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino: In function 'void Check_Protocol(char*)':
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:666:48: warning: invalid conversion from 'const char*' to 'char' [-fpermissive]
     char key_2[2] = {HexToChar(inStr + 2), "\0"};
                                                ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:670:27: warning: invalid conversion from 'char*' to 'uint8_t {aka unsigned char}' [-fpermissive]
     myKeyboard.press(key_2);
                           ^
In file included from /Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:9:0:
/Users/john/Documents/Arduino/libraries/Keyboard/src/Keyboard.h:106:10: note: initializing argument 1 of 'size_t Keyboard_::press(uint8_t)'
   size_t press(uint8_t k);
          ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:678:18: warning: invalid conversion from 'char' to 'const char*' [-fpermissive]
     Print(inStr[0]);
                  ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:825:6: note: initializing argument 1 of 'void Print(const char*)'
 void Print(const char *inStr)
      ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:756:41: warning: embedded '\0' in format [-Wformat-contains-nul]
     sprintf(bluetoothName, "%s\0", inStr);
                                         ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:765:31: warning: embedded '\0' in format [-Wformat-contains-nul]
     sprintf(pin, "%s\0", inStr);
                               ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino: In function 'int SubStrIndex(const char*, const char*)':
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:797:30: warning: invalid conversion from 'char*' to 'int' [-fpermissive]
   int ptr = strstr(str, sfind);
                              ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino: In function 'bool IsCmd(const char*, const char*)':
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:805:38: warning: invalid conversion from 'const char*' to 'char*' [-fpermissive]
   return (StrStartsWith(str, cmdStart) && StrEndsWith(str, ",end"));
                                      ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:813:6: note: initializing argument 1 of 'bool StrStartsWith(char*, const char*)'
 bool StrStartsWith(char* str, const char* desiredStart)
      ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:805:66: warning: invalid conversion from 'const char*' to 'char*' [-fpermissive]
   return (StrStartsWith(str, cmdStart) && StrEndsWith(str, ",end"));
                                                                  ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:818:6: note: initializing argument 1 of 'bool StrEndsWith(char*, const char*)'
 bool StrEndsWith(char* str, const char* desiredEnd)
      ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino: In function 'int GetKeyIndex(byte, byte*)':
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:891:41: warning: invalid conversion from 'byte* {aka unsigned char*}' to 'const char*' [-fpermissive]
   for (byte i = 0; i < strlen(char_array); i++)
                                         ^
In file included from /Users/john/Library/Arduino15/packages/arduino/hardware/avr/1.6.21/cores/arduino/Arduino.h:25:0,
                 from sketch/sketch_may03a.ino.cpp:1:
/Users/john/Library/Arduino15/packages/arduino/tools/avr-gcc/4.9.2-atmel3.5.4-arduino2/avr/include/string.h:399:15: note: initializing argument 1 of 'size_t strlen(const char*)'
 extern size_t strlen(const char *) __ATTR_PURE__;
               ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino: In function 'void SetNewCharEncoding(char*)':
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:1008:44: warning: embedded '\0' in format [-Wformat-contains-nul]
         sprintf(encodingName, "%s\0", inStr);
                                            ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:1033:39: warning: narrowing conversion of '*(inStr + ((sizetype)offset))' from 'char' to 'byte {aka unsigned char}' inside { } [-Wnarrowing]
     byte strValBuff[3] = {inStr[offset], inStr[offset + 1], '\0'};
                                       ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:1033:58: warning: narrowing conversion of '*(inStr + (((sizetype)offset) + 1u))' from 'char' to 'byte {aka unsigned char}' inside { } [-Wnarrowing]
     byte strValBuff[3] = {inStr[offset], inStr[offset + 1], '\0'};
                                                          ^
/Users/john/Documents/Arduino/sketch_may03a/sketch_may03a.ino:1035:87: warning: invalid conversion from 'byte* {aka unsigned char*}' to 'char*' [-fpermissive]
     Encoding[encodingFactor][offset / 2] = (byte)strtoul((char*)strtok(strValBuff, " "), NULL, 16);           //(((byte)inStr[offset]) * 16) + (byte)inStr[offset+1];
                                                                                       ^
In file included from /Users/john/Library/Arduino15/packages/arduino/hardware/avr/1.6.21/cores/arduino/Arduino.h:25:0,
                 from sketch/sketch_may03a.ino.cpp:1:
/Users/john/Library/Arduino15/packages/arduino/tools/avr-gcc/4.9.2-atmel3.5.4-arduino2/avr/include/string.h:576:14: note: initializing argument 1 of 'char* strtok(char*, const char*)'
 extern char *strtok(char *, const char *);
              ^
Sketch uses 18406 bytes (64%) of program storage space. Maximum is 28672 bytes.
Global variables use 1814 bytes (70%) of dynamic memory, leaving 746 bytes for local variables. Maximum is 2560 bytes.