You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Designated initializers for C structs according to C99 are broken in Ultimate in version 0.3.0-dev-f28124e. The C translation plugin does not seem to correctly handle the lookup of C struct field names from specified initializers, thus violating the assertion in the CTranslationUtil in line 253.
The following reduced program from a large embedded program can be used to reproduce the issue:
Thanks for your report! In principle designated initializer seem to work, the problem only seems to occur in the combination with nested struct. But I will have a look at this problem.
It looks like the problem is somewhere in InitializationHandler::constructIndexToInitInfo: There is some queue for children-initializer-results and I have the impression that something goes wrong with peekFirst (that keeps the first element in the queue) and pollFirst (that removes the first element), but I didn't succeed to fix it.
Also: We also crash with RESULT result = { data }; as an initialization, but which a different error message (conversion from CStruct not implemented.), even though the underlying problem seems to be the same.
Designated initializers for C structs according to C99 are broken in Ultimate in version 0.3.0-dev-f28124e. The C translation plugin does not seem to correctly handle the lookup of C struct field names from specified initializers, thus violating the assertion in the
CTranslationUtil
in line 253.The following reduced program from a large embedded program can be used to reproduce the issue:
The text was updated successfully, but these errors were encountered: