digitalmars.D - calling C variadic arguments with no 'argc' and only variadic
- Laeeth Isharc (16/16) Mar 17 2015 So I ported the C API for MathGL to D, and it is up at
- Laeeth Isharc (2/18) Mar 17 2015
- Daniel Murphy (8/16) Mar 17 2015 You should just declare them with the actual argument types. From a qui...
- Laeeth Isharc (5/29) Mar 17 2015 Thanks. I should have double checked but trusted dstep which
- Jacob Carlborg (5/8) Mar 18 2015 Please report any issues with DStep to [1].
- Laeeth Isharc (2/8) Mar 18 2015 Was just about to ;)
So I ported the C API for MathGL to D, and it is up at code.dlang.org (under dmathgl). MathGL is a nice plotting library. http://mathgl.sourceforge.net/doc_en/Pictures.html#Pictures Later I will work on porting the C++ interface, but so far it at least works for the simplest sample. (Not tried anything else as they are all written in C++). DMD gave me an error message for the following declarations: double mgl_rnd (...); double mgl_rnd_ (...); It says I need at least one fixed argument first. But the C headers are as they are. I could work around this by writing a C stub double mgl_rnd_(int dummy, ...) but is there any way to call these functions without this workaround?
Mar 17 2015
sorry - posted in wrong forum On Wednesday, 18 March 2015 at 00:54:07 UTC, Laeeth Isharc wrote:So I ported the C API for MathGL to D, and it is up at code.dlang.org (under dmathgl). MathGL is a nice plotting library. http://mathgl.sourceforge.net/doc_en/Pictures.html#Pictures Later I will work on porting the C++ interface, but so far it at least works for the simplest sample. (Not tried anything else as they are all written in C++). DMD gave me an error message for the following declarations: double mgl_rnd (...); double mgl_rnd_ (...); It says I need at least one fixed argument first. But the C headers are as they are. I could work around this by writing a C stub double mgl_rnd_(int dummy, ...) but is there any way to call these functions without this workaround?
Mar 17 2015
"Laeeth Isharc" wrote in message news:jmlgralvzaqperfkntqw forum.dlang.org...DMD gave me an error message for the following declarations: double mgl_rnd (...); double mgl_rnd_ (...); It says I need at least one fixed argument first. But the C headers are as they are. I could work around this by writing a C stub double mgl_rnd_(int dummy, ...) but is there any way to call these functions without this workaround?You should just declare them with the actual argument types. From a quick look at the documentation it seems like the correct signature would be double mgl_rnd(); i.e. these functions aren't actually variadic they just haven't specified the signature. Functions that take variadic arguments will pretty much always have at least one named argument.
Mar 17 2015
On Wednesday, 18 March 2015 at 03:14:30 UTC, Daniel Murphy wrote:"Laeeth Isharc" wrote in message news:jmlgralvzaqperfkntqw forum.dlang.org...Thanks. I should have double checked but trusted dstep which seems to have gotten confused by these ones. Its a great time saver generally though. LaeethDMD gave me an error message for the following declarations: double mgl_rnd (...); double mgl_rnd_ (...); It says I need at least one fixed argument first. But the C headers are as they are. I could work around this by writing a C stub double mgl_rnd_(int dummy, ...) but is there any way to call these functions without this workaround?You should just declare them with the actual argument types. From a quick look at the documentation it seems like the correct signature would be double mgl_rnd(); i.e. these functions aren't actually variadic they just haven't specified the signature. Functions that take variadic arguments will pretty much always have at least one named argument.
Mar 17 2015
On 2015-03-18 05:49, Laeeth Isharc wrote:Thanks. I should have double checked but trusted dstep which seems to have gotten confused by these ones. Its a great time saver generally though.Please report any issues with DStep to [1]. [1] http://github.com/jacob-carlborg/dstep/issues -- /Jacob Carlborg
Mar 18 2015
On Wednesday, 18 March 2015 at 16:14:28 UTC, Jacob Carlborg wrote:On 2015-03-18 05:49, Laeeth Isharc wrote:Was just about to ;)Thanks. I should have double checked but trusted dstep which seems to have gotten confused by these ones. Its a great time saver generally though.Please report any issues with DStep to [1]. [1] http://github.com/jacob-carlborg/dstep/issues
Mar 18 2015