You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Original bug ID: 4164 Reporter: monate Assigned to:@damiendoligez Status: closed (set by @mshinwell on 2016-12-08T11:00:51Z) Resolution: duplicate Priority: high Severity: minor Version: 3.09.3 Target version: 4.03.1+dev Category: runtime system and C interface Has duplicate:#4230 Related to:#8395#4877#5254#6517 Monitored by:@hcarty monate @dbuenzli "Hendrik Tews"
Bug description
Dear dev. team,
All function in caml C headers are prefixed with caml_.
This is not the case for typedef nor macros in mlvalues.h.
See mlvalues.h for example:
typedef intnat value;
typedef uintnat header_t;
typedef uintnat mlsize_t;
typedef unsigned int tag_t; /* Actually, an unsigned char */
typedef uintnat color_t;
typedef uintnat mark_t;
#define Is_long(x) (((x) & 1) != 0)
#define Is_block(x) (((x) & 1) == 0)
#define Val_long(x) (((intnat)(x) << 1) + 1)
#define Long_val(x) ((x) >> 1)
...
Some of these definitions may clash with other libraries.
Could you provide a cleaner name scheme for all elements in caml headers, and
add the old definitions to compatibility.h ?
Thanks in advance
Benjamin
The text was updated successfully, but these errors were encountered:
Original bug ID: 4164
Reporter: monate
Assigned to: @damiendoligez
Status: closed (set by @mshinwell on 2016-12-08T11:00:51Z)
Resolution: duplicate
Priority: high
Severity: minor
Version: 3.09.3
Target version: 4.03.1+dev
Category: runtime system and C interface
Has duplicate: #4230
Related to: #8395 #4877 #5254 #6517
Monitored by: @hcarty monate @dbuenzli "Hendrik Tews"
Bug description
Dear dev. team,
All function in caml C headers are prefixed with caml_.
This is not the case for typedef nor macros in mlvalues.h.
See mlvalues.h for example:
typedef intnat value;
typedef uintnat header_t;
typedef uintnat mlsize_t;
typedef unsigned int tag_t; /* Actually, an unsigned char */
typedef uintnat color_t;
typedef uintnat mark_t;
#define Is_long(x) (((x) & 1) != 0)
#define Is_block(x) (((x) & 1) == 0)
#define Val_long(x) (((intnat)(x) << 1) + 1)
#define Long_val(x) ((x) >> 1)
...
Some of these definitions may clash with other libraries.
Could you provide a cleaner name scheme for all elements in caml headers, and
add the old definitions to compatibility.h ?
Thanks in advance
Benjamin
The text was updated successfully, but these errors were encountered: