]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Apply libc++ fix for firefox visibility push/pop issue
authorDimitry Andric <dim@FreeBSD.org>
Tue, 15 Mar 2022 20:32:06 +0000 (21:32 +0100)
committerDimitry Andric <dim@FreeBSD.org>
Sat, 14 May 2022 11:46:21 +0000 (13:46 +0200)
commita1f13cbcbb26465d8b54c18a294896add63d6536
treec97807a86ef2568eb34f3e9ee15bd046c605a40a
parentd781ede639f2289ccf0889dd138169e1194b656b
Apply libc++ fix for firefox visibility push/pop issue

Merge commit 7ab1ab0db401 from llvm git (by Dimitry Andric):

  [libc++] Make __dir_stream visibility declaration consistent

  The class `__dir_stream` is currently declared in two places: as a
  top-level forward declaration in `directory_iterator.h`, and as a friend
  declaration in class `directory_entry`, in `directory_entry.h`.

  The former has a `_LIBCPP_HIDDEN` attribute, but the latter does not,
  causing the Firefox build to complain about the visibility not matching
  the previous declaration. This is because Firefox plays games with
  pushing and popping visibility.

  Work around this by making both `__dir_stream` declarations consistently
  use `_LIBCPP_HIDDEN`.

  Reviewed By: ldionne, philnik, #libc

  Differential Revision: https://reviews.llvm.org/D121639
contrib/llvm-project/libcxx/include/__filesystem/directory_entry.h