Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0004936OCaml-for CamlIDL use 09:122011-12-17 09:28
ReporterDmitry Grebeniuk 
Assigned To 
StatusclosedResolutionwon't fix 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0004936: "ignore" attribute doesn't work for function's arguments
DescriptionI have an .idl file with the following contents:

void func( [in,ignore] void* param , int x );

After processing this file with "camlidl test.idl" I get following C stub code:

value camlidl_test_func(
    value _v_x)
  void *param; /*in*/
  int x; /*in*/
  x = Int_val(_v_x);
  func(param, x);
  return Val_unit;

This contradicts the documentation ( [^] ), section "3.2 Pointers":
"IDL pointers of kind ignore denote struct fields and function parameters that need not be exposed in the Caml code. Those pointers are simply set to null when converting from Caml to C, and ignored when converting from C to Caml. They cannot occur elsewhere."
Argument "param" was not set to NULL in the C code.
It would be convenient to have an ability to ignore function's arguments setting them to NULL, so, it's more preferrable to fix the code than to fix the documentation.
TagsNo tags attached.
Attached Files

- Relationships

-  Notes
xleroy (administrator)
2011-12-17 09:28

I'm closing this PR because CamlIDL has been dormant since 2004. It now lives (or at least sleeps) on [^] [^] . Anyone who still cares about CamlIDL after all these years is welcome to join the project on and breathe some life in it.

- Issue History
Date Modified Username Field Change
2009-12-10 09:12 Dmitry Grebeniuk New Issue
2010-01-07 16:26 doligez Status new => acknowledged
2011-12-17 09:28 xleroy Note Added: 0006349
2011-12-17 09:28 xleroy Status acknowledged => closed
2011-12-17 09:28 xleroy Resolution open => won't fix
2017-02-16 14:37 xleroy Category CamlIDL => for CamlIDL use [^]
2017-02-23 16:43 doligez Category for CamlIDL use [^] => -for CamlIDL use [^]

Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker