Comments (5)
I suppose we can just change it? Perhaps you can try it and make sure tests all pass? I don't have access to a sparcv9 machine.
from jnr-ffi.
Oh, and if it works...PR please :-)
from jnr-ffi.
I don't have access to any sparcv9 machines either. I just stumbled upon this by accidental code inspection. I was trying to figure out what the largest portably safe target Java type for a uid was. I was pretty sure it was 32 bit integer and our existing code assumes that. But then I saw this outlier in the jnr-ffi code where it was 64 bit, was skeptical about it, and then started googling. So I'm entirely unaffected by this bug.
Finding a sparcv9 at this point would range between time consuming or impossible depending on who you know. Even for Oracle employee, access is restricted to people in that specific organization. Maybe this is too cavalier but... if this code was never tested on sparcv9 when it was checked in maybe it's no worse to not test the fix? :-)
from jnr-ffi.
Some friendly folks in the Solaris unit have pointed out the definition of uid_t and gid_t isn't processor specific. Instead it's a Solaris thing. So there's only one correct "configuration" for all the Solaris ports. And you already have it configured correctly on Solaris x86 and Solaris x86_64:
$ grep uid_t i386/solaris/TypeAliases.java
m.put(TypeAlias.uid_t, NativeType.UINT);
$ grep uid_t x86_64/solaris/TypeAliases.java
m.put(TypeAlias.uid_t, NativeType.UINT);
$ grep gid_t i386/solaris/TypeAliases.java
m.put(TypeAlias.gid_t, NativeType.UINT);
$ grep gid_t x86_64/solaris/TypeAliases.java
m.put(TypeAlias.gid_t, NativeType.UINT);
They've suggested testing that it's correctly configured on Solaris x86. Would that be convincing enough to allow copying that setting to the SPARC files? Also... how do we test something like this?
from jnr-ffi.
And it seems you also have "sparc" like for v8 and earlier that in theory needs the same fix. No chance of finding one of those. :-P
from jnr-ffi.
Related Issues (20)
- UnsatisfiedLinkError when loading 3 dependent libraries HOT 11
- Unsatisfied link when used in conjunction with jnr-posix HOT 5
- Investigate failing Pointer Boolean tests on Darwin (macOS)
- LibraryLoader.search() path not taken into consideration unless also in LD_LIBRARY_PATH HOT 3
- What's the mapping Java type of C type FILE *?
- [feature request] HOT 1
- Erorr : jnr.ffi.provider.jffi.Provider
- Native Object filling "not working"
- Native C calling Java method HOT 1
- Cannot pass a struct to 'c' function by value
- Multi-dimensional arrays as struct members HOT 1
- Load the static link library HOT 1
- Release new version of jnr-ffi HOT 1
- Why use JNR over JNA HOT 1
- support convert pointer to struct
- String parameter of a callback function gets messed when passed from DLL (Rust) to Java HOT 2
- Android and bytecode
- document build procedures
- JVM crash invoking some SDL Library function
- Bad dates in jnr/jnr-ffi commits HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jnr-ffi.