The issue is with the IFCsvr toolkit that is used to read STEP files. IFCsvr is a wrapper around an old version of ST-Developer. There's nothing wrong with the basic functionality of IFCsvr. However, it can't read lists of lists or anything of anything, won't work with Part 21 edition 3 files, and is unforgiving of syntax errors. The source code for IFCsvr is not available and the developer isn't going to fix anything; it's old code. Using IFCsvr also prevents using current versions of Tcl for reasons that I won't explain.
Rewriting SFA for any modern STEP toolkit would be a good idea. SFA only reads STEP files, so that's easy. Open a file, get all entity types, read entity instances, report all attribute values. The most complicated function used from IFCsvr is to look for backwards references (GetUsedIn). This is an important feature in SFA.
If someone is willing to take this on, I can identify the code that needs to be worked on.
Bob