Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0004164OCamlOCaml generalpublic2006-11-16 10:302013-07-24 12:16
Reportermonate 
Assigned Todoligez 
PrioritynormalSeverityminorReproducibilityalways
StatusacknowledgedResolutionopen 
PlatformOSOS Version
Product Version3.09.3 
Target Version4.01.1+devFixed in Version 
Summary0004164: caml C headers may clash with other C libraries
DescriptionDear 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





TagsNo tags attached.
Attached Files

- Relationships
related to 0001956acknowledgeddoligez Name clashes 
has duplicate 0004230acknowledgeddoligez value name conflict 
related to 0005254acknowledged Compilation of generated .c files with g++ 
related to 0004877acknowledged Definition of uint64 in caml/config.h conflicts. (MacOSX Snow Leopard, X86_64) 

-  Notes
There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
2006-11-16 10:30 monate New Issue
2006-11-17 15:26 doligez Relationship added related to 0001956
2006-11-17 15:26 doligez Assigned To => doligez
2006-11-17 15:26 doligez Status new => acknowledged
2007-04-03 18:03 doligez Relationship added has duplicate 0004230
2011-08-02 09:57 xclerc Relationship added related to 0005254
2012-07-11 16:15 doligez Target Version => 4.01.0+dev
2012-07-31 13:37 doligez Target Version 4.01.0+dev => 4.00.1+dev
2012-09-11 09:21 doligez Target Version 4.00.1+dev => 4.01.0+dev
2012-09-17 17:34 doligez Relationship added related to 0004877
2013-07-24 12:16 doligez Target Version 4.01.0+dev => 4.01.1+dev


Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker