in reply to Automatically Import XS struct

Hmmm ... I've created a header file named SDR.h, which is found by default. (That is, it's in a directory that is automatically searched.)

That file contains (for simplicity) the following:
struct rtlsdr_dev { int x; double d; };
Then I create an Inline::C script:
use strict; use warnings; use Inline C =><<'EOC'; #include <SDR.h> void baz() { struct rtlsdr_dev mine; mine.x = 1032; mine.d = sqrt(2.0); printf("%d %.16e\n", mine.x, mine.d); } EOC baz();
When I run that script, it outputs (as expected):
1032 1.4142135623730951e+00
Given that Inline::C is nothing more than a module that autogenerates an XS file, then compiles and runs that XS code, I'm wondering what the difficulty is.

Is it that you want to avoid naming the struct (to, eg, "mine", as I did) ? If so, why is such a restriction being imposed ?
Or is there some other problem ?

Cheers,
Rob