I need your CFFI help.

Madhu enometh at meer.net
Wed Nov 4 05:17:37 UTC 2020


[I can't handle your html mail so i'm not quoting it]

>  DrawTriangleLines(Vector2 v1, Vector2 v2, Vector2 v3, Color color);

This passes structs by "value" - it is not passing a pointer but the
actual object. This works in arrangement with the C compiler.

To do this in cffi you have to load "cffi-libffi" subsystem first.

This is  "documented" in the cffi manual under

- section 6.6 "Foreign Structure Types"
- Functions "defcfun" "foreign funcall"
- Glossary entry "aggregate type"

I suggest you read up on these and ask again if you have problems.

    ---

BTW I had submitted a patch to fix some problems with fsbv which was
committed on 2020-02-26 but this was reverted in version-0.22.1 on
2020-05-12 - because of some problems with some google library.

I believe the actual fault was in a bug of omission in a commit d315a
by Vadim Penzin in on 2014-12-02.

I'd pushed the fix for that for review on my personal branch in
https://github.com/enometh/cffi/commit/74a15af823e3bfec7256e9a572c67962ed985f60

but Luis doesn't seem to have found the time to check that.

The patch I had submitted (based on the suggestion from luis on this
mailing list) fixes other problems I face but subtly changes the sytax
for defcvars and my concern is user code may have to change - if it is
written before it is fixed.



More information about the cffi-devel mailing list