https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94063

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
The test case for Cygwin (which is expected to fail on other targets) is 

#include <filesystem>
#include <assert.h>

using std::filesystem::path;

int main()
{
  path p;

  p = "/";
  p += path("/x");
  assert( p.has_root_name() );
  assert( p.root_name() == p );

  p = "/";
  p += "/x";
  assert( p.has_root_name() );
  assert( p.root_name() == p );

  p = "/";
  p += path("/");
  assert( !p.has_root_name() );
  assert( p.has_root_directory() );

  p = "/";
  p += "/";
  assert( !p.has_root_name() );
  assert( p.has_root_directory() );
}

Reply via email to