The output in your first example is wrong. Because you used CALL SYMPUT() with a NUMERIC value for the second argument SAS will convert the number 100 into the string ' 100' using the BEST12. format. So the message in the log from the %PUT statement will look like:
GLOBAL BBB 100

To have it create BBB without the leading spaces you would have needed to either pass CALL SYMPUT() a character string or switch to the modern CALL SYMPUTX() function instead.