Interesting! Looks like there are certain conditions that cause bloat with strings.

I declared a string globally (var x: string. This increased the file size from 8K to 8.5K. However, if I initialised it at the same time (var x: string = 'blah') then the filesize jumped to 13.5K! Hmm! The same test with an integer didn't increase the filesize - nor did PChars or ShortStrings.

Another tidbit: declaring the strings as vars inside a procedure didn't increase the file size at all.

I still want to get rid of that bloody RTL though. Some day...