diff options
Diffstat (limited to 'compiler/compiled_method.h')
| -rw-r--r-- | compiler/compiled_method.h | 9 | 
1 files changed, 8 insertions, 1 deletions
diff --git a/compiler/compiled_method.h b/compiler/compiled_method.h index b5c99e8c95..70161eb221 100644 --- a/compiler/compiled_method.h +++ b/compiler/compiled_method.h @@ -161,7 +161,14 @@ using DefaultSrcMap = SrcMap<std::allocator<SrcMapElem>>;  class LinkerPatch {   public: -  enum class Type { +  // Note: We explicitly specify the underlying type of the enum because GCC +  // would otherwise select a bigger underlying type and then complain that +  //     'art::LinkerPatch::patch_type_' is too small to hold all +  //     values of 'enum class art::LinkerPatch::Type' +  // which is ridiculous given we have only a handful of values here. If we +  // choose to squeeze the Type into fewer than 8 bits, we'll have to declare +  // patch_type_ as an uintN_t and do explicit static_cast<>s. +  enum class Type : uint8_t {      kRecordPosition,   // Just record patch position for patchoat.      kMethod,      kCall,  |