Ещё один прикол от Си. Я сегодня написал вместо:
## Код:
```
void ReadQualyIdent (Parser &ps, std::string &ident1, std::string &ident2)
{
   ...
   ident2 = ps.scanner.ident;
   ...
}
```

вот это:
## Код:
```
void ReadQualyIdent (Parser &ps, std::string &ident1, std::string &ident2)
{
   ...
   ident2 = ps.symbol;
   ...
}
```

Компилятор MS VS 2005 это дело прекрасно скомпилировал, не смотря на то, что переменная ps.symbol имеет типenum, а неstd::string.
В результате во время выполнения программы появился "мусор в памяти".