d-builtins.cc
38 KB
-
d: Fix segfault in build_frontend_type on alpha-*-* · e1ed5881
The va_list type for Alpha includes a nameless dummy field for alignment purposes. To transpose this into D, a field named "__pad%d" is inserted into the struct definition. It was also noticed that in the D front-end AST copy of the backend type, all offsets for fields generated by build_frontend_type were set to zero due to a wrong assumption that DECL_FIELD_OFFSET would have a non-zero value. This has been fixed to use byte_position instead. gcc/d/ChangeLog: * d-builtins.cc (build_frontend_type): Handle struct fields with NULL DECL_NAME. Use byte_position to get the real field offset. (cherry picked from commit 70f6320462d91e5add99ae5b50226356302a8c0b)
Iain Buclaw committed