Raising the kernel per process data size limit from 512M to 768M makes the exception go away,
but it will still crash.
What crash is that? It may possibly be another issue you're hitting there.
With the raised data size limit, I get a nondescript Bus Error.
Surely there's something else going wrong that makes it allocate that much
memory in the first place?
CS is a bit of a memory hog sometimes

But I think there's work in PS going on trying to reduce the memory usage.
I see

Increasingly, I get the nagging feeling that there's nothing wrong
and it's just really using that much memory (and I have "only" 1G RAM *sigh*).
But only a subset of the maps are not lighter2-lit. For example, some of the bigger maps, such as hydlaa plaza, are lit by lighter2. To truly say whether lighter2 lighting or the sheer size of a level is responsible for the memory usage you'd have to compare an "old" and a lighter2 version of the same level(s).
I can run the Linux version (FreeBSD can run Linux binaries), although the new 0.3.020 release
is very unstable for me, which is the reason for me trying to build a FreeBSD native client from SVN),
so I was able to compare the memory usage as reported by top(1):
Hydlaa plaza, lighter2 map from 0.3.020 release: 708M,
old map from 0.3.019 release: 494M. Quite a difference, I'd say

though I'm unsure whether I'm on the right track here. Would a debugging-
enabled CS build help?
It would be helpful if you want to start "real" debugging and you have to inspect local variables or, function parameters (since they may be removed due optimizations from the compiler or have seemingly bogus values) or want to follow the execution of an algorithm (since the compiler may rearrange bits of code for optimization).
Right. Well, I'll try a debugging build when I've got some free time. Or just get another
gig RAM
