Git Product home page Git Product logo

Comments (3)

gasche avatar gasche commented on June 1, 2024

This is a tooling issue with OSX (and also MSVC toolchains on Windows) that was worked-around upstream in the OCaml compiler, in 4.05 for OSX and much later for MSVC. See:

I see two approaches to make your issue go away:

  • Stop supporting 4.04; why do we care about 4.04 anymore?
  • Convince someone that likes backporting and opam and old OCaml releases to backport either ones of those changes to 4.04 (the #9011 fix is more general and a bit nicer, so I would personally try that). You could try your luck with @dra27, he is unreasonably attracted to this kind of issues.

from camlp-streams.

gasche avatar gasche commented on June 1, 2024

To summarize: I think that this is a compiler question with either a non-fix or a compiler-fix, not something to be fixed at the level of each affected package. I propose to close the present issue to reflect this, let me know if that sounds reasonable.

from camlp-streams.

dra27 avatar dra27 commented on June 1, 2024

There are third and fourth ways, the third of which I’ll do shortly:

  • Insert a dummy module in the library for these old versions (this fixes MSVC as well). This solution was rejected for stdlib-shims because the dummy module was needed for current releases of the compiler, but stdlib-shims is the opposite of camlp-streams in this regard
  • Generate an empty package in Dune when the library itself is empty.

I’m not so keen on a back-port - the back-ports we do are to allow old compilers to build in new environments, but empty libraries were always broken in macOS and MSVC prior to the workaround in 4.05 (for macOS) and the fix (for both) in 4.11

from camlp-streams.

Related Issues (4)

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.