On Sun, 2024-12-01 at 19:44 -0500, Lewis Hyatt wrote:
> This patch is new in v3 and is a small change to libgdiagnostics
> similar to
> other changes required by 64-bit location_t.
> 
> -- >8 --
> 
> Tweak libgdiagnostics.cc, which is necessarily sensitive to line-map
> internals, to support 64-bit location_t as well.
> 
> gcc/ChangeLog:
> 
>       * libgdiagnostics.cc (struct diagnostic_manager): Use
> location_t(-1)
>       instead of UINT_MAX to support 64-bit location_t as well.
>       (diagnostic_manager::diagnostic_manager): Change hard-coded
> "5" to
>       line_map_suggested_range_bits.
> ---
>  gcc/libgdiagnostics.cc | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/gcc/libgdiagnostics.cc b/gcc/libgdiagnostics.cc
> index e5cee0958f9..53a8423f904 100644
> --- a/gcc/libgdiagnostics.cc
> +++ b/gcc/libgdiagnostics.cc
> @@ -320,7 +320,7 @@ public:
>      linemap_init (&m_line_table, BUILTINS_LOCATION);
>      m_line_table.m_reallocator = xrealloc;
>      m_line_table.m_round_alloc_size = round_alloc_size;
> -    m_line_table.default_range_bits = 5;
> +    m_line_table.default_range_bits = line_map_suggested_range_bits;

Is line_map_suggested_range_bits still a constant after the other
patches in the kit?  If so, this patch is OK for trunk.

Thanks
Dave


>    }
>    ~diagnostic_manager ()
>    {
> @@ -500,7 +500,7 @@ private:
>    impl_client_version_info m_client_version_info;
>    std::vector<std::unique_ptr<sink>> m_sinks;
>    hash_map<nofree_string_hash, diagnostic_file *> m_str_to_file_map;
> -  hash_map<int_hash<location_t, UNKNOWN_LOCATION, UINT_MAX>,
> +  hash_map<int_hash<location_t, UNKNOWN_LOCATION, location_t (-1)>,
>          diagnostic_physical_location *> m_location_t_map;
>    std::vector<std::unique_ptr<diagnostic_logical_location>>
> m_logical_locs;
>    const diagnostic *m_current_diag;
> 

Reply via email to