Giter VIP home page Giter VIP logo

Comments (6)

maflcko avatar maflcko commented on June 11, 2024

Compile from source MinGW64, run twice..

What are the exact steps to reproduce, including the exact operating system version?

Does it happen with the compiled release version as well?

Ref: https://en.cppreference.com/w/cpp/filesystem/remove

from bitcoin.

asctime avatar asctime commented on June 11, 2024

Windows 10. I run the official binary on Linux and that's fine. Different compilers seem to manage the exception slightly differently? Regardless I'm not sure that a blind delete is the right way to do this, is all. Fixed on my side, I just wanted to point it out.

from bitcoin.

maflcko avatar maflcko commented on June 11, 2024

Different compilers seem to manage the exception slightly differently?

That should not be the case. The point of standard C++ library std::filesystem::remove is to provide the same interface behavior, regardless of compiler or operating system.

The specification says that false should be returned when the file does not exist, not an exception be thrown.

However, without exact steps to reproduce, using your compiler version, there is little that can be done here.

Regardless I'm not sure that a blind delete is the right way to do this, is all.

Right, it could make sense to catch the exception for other reasons, or not allow it to be thrown, but that is a different question.

from bitcoin.

maflcko avatar maflcko commented on June 11, 2024

According to #29930 (comment) the reason could be that you are using an experimental C++17 standard library, which has bugs?

from bitcoin.

asctime avatar asctime commented on June 11, 2024

That should not be the case. The point of standard C++ library std::filesystem::remove is to provide the same interface behavior, regardless of compiler or operating system.

The specification says that false should be returned when the file does not exist, not an exception be thrown.

Ah good point ><. I'll try it once with my clang install, it's a fair bit newer than my gcc which is due to be updated anyway. Ok to close from my side. Thanks.

from bitcoin.

maflcko avatar maflcko commented on June 11, 2024

Closing for now, but please leave a comment if there are more details to debug this issue.

from bitcoin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.