sandboxed-api/sandboxed_api
Christian Blichmann 67bc67bbef clang_generator: Handle inter-type dependencies better
This change changes the emitter to work on `clang::TypeDecl`s instead of
`clang::QualType`s, as the latter only describe complete definitions. This
allows us to better deal with situations where we would otherwise have a kind
of circular type dependencies: For example, a `typedef` that depends on a
`struct` which in turn has a member that references the typedef.
For this to work, we now also record the actual source order of declarations,
similar to what the libclang based header generator does.

Also add some more tests for the newly covered cases.

PiperOrigin-RevId: 488370914
Change-Id: I2d1baa863fb12d1801bf11a20f3f88df7fde3129
2022-11-14 08:19:13 -08:00
..
bazel Migrate from cfg = "host" to cfg = "exec" 2022-11-14 07:08:08 -08:00
docs Update references to the new documentation 2021-12-14 09:03:29 -08:00
examples Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
sandbox2 Fix command-line handling in sandbox2tool 2022-10-25 08:05:23 -07:00
tools clang_generator: Handle inter-type dependencies better 2022-11-14 08:19:13 -08:00
util Remove unused SAPI_INTERNAL_UNREACHABLE 2022-10-24 08:48:35 -07:00
BUILD.bazel Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
call.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
client.cc Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
CMakeLists.txt Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
config.h For the SECCOMP event, check if the event msg is in the range of one of the known architectures. 2022-08-31 08:09:37 -07:00
embed_file.cc Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
embed_file.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
file_toc.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
lenval_core.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
proto_arg.proto Migration of remaining protobufs from proto2 to proto3 2022-03-16 00:43:46 -07:00
proto_helper.cc Change to proto2::MessageLite and resolve reflextion for mobile builds 2022-03-03 04:48:30 -08:00
proto_helper.h Change to proto2::MessageLite and resolve reflextion for mobile builds 2022-03-03 04:48:30 -08:00
rpcchannel.cc Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
rpcchannel.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
sandbox.cc Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
sandbox.h Internal Changes 2022-05-19 04:55:24 -07:00
sapi_test.cc #Cleanup: Consistently use std::make_unique 2022-10-12 05:23:42 -07:00
testing.cc bazel: Drop dependency on util/flags.h in runfiles helper 2022-04-20 04:46:08 -07:00
testing.h This change introduces internal experimental support for Android. 2022-06-08 06:51:41 -07:00
transaction.cc Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
transaction.h Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
var_abstract.cc Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
var_abstract.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
var_array.h Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
var_int.cc Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
var_int.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
var_lenval.cc Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
var_lenval.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
var_proto.h #Cleanup: Consistently use std::make_unique 2022-10-12 05:23:42 -07:00
var_ptr.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
var_reg.h Use Abseil's log/flags instead of glog/gflags 2022-10-20 06:48:51 -07:00
var_struct.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
var_type.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
var_void.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00
vars.h Change license link to HTTPS URL 2022-01-28 01:39:09 -08:00