Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix dropped attributes from vector types #76

Merged
merged 2 commits into from
Jul 19, 2024

Conversation

giulianobelinassi
Copy link
Collaborator

Clang handle attribute((vector_size((N)))) attributes differently from the general case. While other attributes resides in the AttrVec structure, those are hardcoded in the VectorType structure and the AttrVec may contain nothing. Hence we also need to trigger the Get_Expanded_Loc for this case as well even if we can't get the SourceLocation of this attribute.

Closes #68 (I hope for the last time! :) )

Clang handle __attribute__((__vector_size__((N)))) attributes differently
from the general case.  While other attributes resides in the AttrVec
structure, those are hardcoded in the VectorType structure and the AttrVec
may contain nothing.  Hence we also need to trigger the Get_Expanded_Loc
for this case as well even if we can't get the SourceLocation of this
attribute.

Signed-off-by: Giuliano Belinassi <[email protected]>
The bultin construct `__builtin_convertvector(a, b)` is not a function
but rather a special kind of Expr.  Hence we need a visitor to catch
it correctly.

Signed-off-by: Giuliano Belinassi <[email protected]>
@giulianobelinassi giulianobelinassi merged commit a3e0395 into SUSE:main Jul 19, 2024
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Attribute of typedef dropped, leads to failure of extraction.
1 participant