aboutsummaryrefslogtreecommitdiffhomepage
path: root/cgo/libclang_stubs.c
AgeCommit message (Collapse)Author
2022-09-16cgo: implement support for static functionsAyke van Laethem
2022-03-12cgo: slightly improve error messagesAyke van Laethem
Updating them to libclang-13-dev was a good change, but we can go even further: * The suggestion didn't apply to MacOS. * The suggestion would need to be updated with every LLVM release, which is a maintenance burden. * The suggestion is wrong when compiling with `-tags=llvm12` for example to choose a different LLVM version. Therefore, link to the build documentation instead.
2022-03-12Update libclang installation comment to libclang-13-devZauberNerd
Tinygo bumped the default llvm version to v13 in: tinygo-org/tinygo@3a4e0c9
2021-10-31all: drop support for LLVM 10Ayke van Laethem
2020-04-09main: switch to LLVM 10Ayke van Laethem
This commit also adds a bit of version independence, in particular for external commands. It also adds the LLVM version to the `tinygo version` command, which might help while debugging.
2019-11-16all: switch to LLVM 9Ayke van Laethem
2019-06-03cgo: add support for bitfields using generated getters and settersAyke van Laethem
2019-05-17cgo: add support for enum typesAyke van Laethem
Enum types are implemented as named types (with possible accompanying typedefs as type aliases). The constants inside the enums are treated as Go constants like in the Go toolchain.
2019-05-12cgo: refactor; support multiple cgo files in a single packageAyke van Laethem
This is a big commit that does a few things: * It moves CGo processing into a separate package. It never really belonged in the loader package, and certainly not now that the loader package may be refactored into a driver package. * It adds support for multiple CGo files (files that import package "C") in a single package. Previously, this led to multiple definition errors in the Go typecheck phase because certain C symbols were defined multiple times in all the files. Now it generates a new fake AST that defines these, to avoid multiple definition errors. * It improves debug info in a few edge cases that are probably not relevant outside of bugs in cgo itself.