Each member of 'Something' is a 'FIELD_DECL' and the corresponding documentation states, "If DECL_C_BIT_FIELD holds, this field is a bit-field. In a bit-field, DECL_BIT_FIELD_TYPE also contains the type that was originally specified for it..." After updating my code to check for 'DECL_C_BIT_FIELD', I see it holds. Then using 'DECL_BIT_FIELD_TYPE' gets a tree node on which 'TYPE_NAME' returns a valid node from which to get 'unsigned int'. crasypantz wrote > I am having difficulty getting the type name of an integer bit mask field. > For example: > > struct Something { > unsigned int unmasked; > unsigned int masked:7; > } > > Both field tree nodes for 'Something' have 'INTEGER_TYPE == > TREE_CODE(node)'. For the 'unmasked' node I use 'TYPE_NAME(node)' to get > the type name 'unsigned int'. However, 'TREE_NAME' on the 'masked' node > returns null. How can I get the type name? I searched the archive and > cannot find anything related to the question. Hopefully I have not > overlooked something previously posted. > > Again, your help is appreciated. -- View this message in context: http://gcc.1065356.n5.nabble.com/How-to-parse-a-record-bitmask-field-in-plugin-tp1230118p1230237.html Sent from the gcc - Help mailing list archive at Nabble.com.