# DOORS DXL

## Tips

Deactivation of (dangerous) the auto-declaration feature (put it for example in startup.dxl)

XFLAGS_ &= ~AutoDeclare_

## Pitfalls

### Beware of functions with string parameter

Functions that have only one string as parameter IGNORE the parenthesis. This often leads to unwanted and unexpected side effects.

A famous example of this behavior:

string sA = "upper"
string sB = "lower"
print upper(sA) " " sB

yields unexpectedly:

"UPPER LOWER"

"UPPER lower"

workaround, use parenthesis:

print (upper(sA)) " " sB

### Memory footprint (string table)

Avoid string concatenation, like:

"stra" " strb"

it adds entries to the global string table which keeps increasing in size. There is no way to free entries from the global string table. Only closing a DOORS session will end up in freeing the memory.