https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119737
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|target |middle-end
Keywords| |EH
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #1)
> The except.cc code does:
> ```
> switch_to_exception_section (fnname);
>
> /* If the target wants a label to begin the table, emit it here. */
> targetm.asm_out.emit_except_table_label (asm_out_file);
>
> /* Do the real work. */
> output_one_function_exception_table (section);
>
> switch_to_section (current_function_section ());
> ```
>
> I suspect current_function_section should be function_section instead.
Or better yet:
```
section *saved_section = in_section;
switch_to_exception_section (fnname);
...
switch_to_section (saved_section);
```