Install all include files, and access internals with CAML_INTERNALS#656
Install all include files, and access internals with CAML_INTERNALS#656lefessan merged 1 commit intoocaml:trunkfrom
Conversation
3a56445 to
35662bd
Compare
|
Instead of adding Could you find a place in the manual to say that there is no compatibility guaranty if this flag is selected. Could you also at the same time add a warning in the documentation that there is no guaranty if someone access a symbol of the runtime through another mean than exported interface (external in C or OCaml). |
|
I have personal preference to put such information ("this source relies on the OCaml internals" =>
Where is the source of the documentation ? |
8f00b25 to
3660652
Compare
|
I agree with Fabrice, it's better to have a I think the name is not quite right. What does this have to do with "access"? It should probably be
Duh? It's in |
d0ff974 to
539e6fd
Compare
|
I have switched to CAML_INTERNALS and updated the manual. Is the short paragraph that I added enough ? Since it is supposed to grant access to the "private" parts of the headers, it was not clear for me that it had to be documented in the "public" manual... |
539e6fd to
63a3924
Compare
|
Sounds like there are no other comments, so merging. |
|
@gasche By the way, it made me notice that there is still a private section in |
|
The warning shows when I build all tests with "make all", but in the middle of the list of all tests, not in the summary at the end. Otherwise just "cd tests/lib-marshal; make" shows it. But it may depend on your compiler (I have GCC 6.1.1). So I tested and |
|
@lefessan I'll let you commit this along with the |
|
See #737 |
Install all include files, and access internals with CAML_INTERNALS
* Add flags -dcfg-invariants -dcfg-equivalence-check * Turn off cfgize testing by default Can be enabled with -dcfg-equivalence-check compiler flag
Adding Nobias Therapeutics ad for AI Pharma Engineer.
Currently, OCaml only installs some of its include files, and remove some "private" sections from these public headers. This PR changes this behavior by installing all include files, but keeps them private (i.e. they will exactly define the same values as before) unless a macro
CAML_INTERNALSis defined. The rationale is that specific applications might require more access to the internals of the runtime, but they should be warned of the possibility of incompatible changes by setting this macro.To have access to internals, all C files within the distribution must also set
CAML_INTERNALS.This PR is needed for OCamlPro's memory profiler to work on an unpatched version of OCaml.