Comments (5)
@cznic are you sure Go is aware of this union at all? ;)
from c-for-go.
@xlab All I know is that the error looks to me like a fault of cc
, perhaps because of the anonymous struct member. How it is/should be handled in higher layers is to be cleared later.
I hope to dive into this in the morning, that's in ~10 hours from now.
from c-for-go.
@xlab Finally looking into this and the error message seems to be not produced by cc
.
Sorry for the noise.
from c-for-go.
@gengen1988 you'll have to make a wrapper in C for this union, if you want to access and set the data. That's a imitation from Go (cgo part).
You can simply ignore this struct or make it raw
see MemTips https://github.com/xlab/c-for-go/wiki/Translator-config-section#memtips
from c-for-go.
This is my yaml:
---
GENERATOR:
PackageName: fmod
FlagGroups:
- {name: LDFLAGS, flags: ["-lfmod", "-L${SRCDIR}"]}
Includes:
- fmod.h
PARSER:
IncludePaths:
- fmod
SourcesPaths:
- fmod.h
TRANSLATOR:
ConstRules:
defines: eval
Rules:
global:
- {action: accept, from: ^FMOD_}
function:
type:
# - {action: ignore, from: FMOD_DSP_PARAMETER_DESC}
const:
- {action: ignore, from: ^FMOD_PRESET_}
private:
- {transform: unexport}
post-global:
# - {load: snakecase}
PtrTips:
function:
- {target: FMOD_System_Create, tips: [sref]}
MemTips:
# - {target: FMOD_DSP_PARAMETER_DESC, self: raw}
if add {action: ignore, from: FMOD_DSP_PARAMETER_DESC}
then:
./cgo_helpers.go:9437: undefined: FMOD_DSP_PARAMETER_DESC
./cgo_helpers.go:9477: undefined: FMOD_DSP_PARAMETER_DESC
./cgo_helpers.go:9483: undefined: NewFMOD_DSP_PARAMETER_DESCRef
./fmod.go:3384: undefined: FMOD_DSP_PARAMETER_DESC
if I make it raw
, then:
./cgo_helpers.go:9689: x[i0][i1].PassValue undefined (type FMOD_DSP_PARAMETER_DESC has no field or method PassValue)
Is there some example for "wrapper in C"?
from c-for-go.
Related Issues (20)
- define pointer to function HOT 1
- type C.struct_ in strut and func HOT 1
- How to handle a function returning a struct as value
- Type translation does not respect systems data model HOT 1
- Verbose argument to print more logs
- Avoid lock / unlock for some function call
- Wiki need to be updated
- panic: unknown type _Float128 HOT 2
- Non int return function pointer not recognized
- Generator uses underlying type of typedef when used as a parameter
- Website down HOT 3
- It would be nice to at least have an example of the YML required in the readme since the website does not work HOT 1
- build HOT 5
- [OS X / Ubuntu ARM64] include file not found: <string> HOT 3
- Extracting SAL annotations from declarations HOT 2
- Example where C const get translated into Go typed const
- Callback generation HOT 2
- THIS IS NOT AN ISSUE!!!
- Avoid symbol lookup error
- Passing in an array to a C function and reading the data - incorrect autogenerated Go code
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 c-for-go.