If there were local variables or simple macros, then dsss files wouldn't have to be so repetitive.
For example if there are two targets that need the same buildflags (and others that need different ones), currently you just have to repeat those buildflags twice.
Similarly if you want to add some flags to all projects (like "-g -debug"), you pretty much have to add it to all of the targets one by one for anything slightly complex where [*] becomes useless. (see http://www.dsource.org/projects/dsss/ticket/112)
Allowing something like this would help reduce repetitive clutter in dsss.conf files:
DEBUG=-g -debug
[prog.d]
buildflags += $DEBUG -I../stuff
Related is the request for incorporating a full-blown scripting language
http://www.dsource.org/projects/dsss/ticket/99, which presumably would also allow you to set variables.
But I'm just talking simple text-substitution type variables here. Something that should be much easier to implement.