ts_sal includes support for two data types (at least) that we aren't using and don't appear to be necessary:
- char: this is an alias for "string" and is very confusing to me because it sounds like a single 8-bit int (the C definition) instead of a string. It is not used (except in Test).
- octet: it's not being used (except in Test). Do we need it?
I think all the remaining types I know about are used and are fairly self-explanatory.
Would it be practical to remove support for either or both of these? Clearly it is not a high priority and it will be slightly disruptive because it will require minor changes to Test XML and unit tests in ts_sal and ts_salobj (which I am happy to do).
Also: does ts_sal support "unsigned long long" and if not, would that be easy to add? It would be useful for long bitmasks. It's not a big deal because "long long" works, but unsigned is a more natural choice for bitmasks.