Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Circular dependency #1186

Closed
adetaylor opened this issue Nov 8, 2022 · 1 comment
Closed

Circular dependency #1186

adetaylor opened this issue Nov 8, 2022 · 1 comment
Labels
bug Something isn't working

Comments

@adetaylor
Copy link
Collaborator

Using autocxx 0.23 gives a circular dependency as follows. This is almost definitely caused by #1179; a circular dependency problem seemed like a risk there.

[1/18] ACTION //third_party/rust/autocxx/chromium_integration/tests/autocxx_basic_test:autocxx_basic_test_lib_autocxx_generated_gen(//build/toolchain/linux:clang_x64)
FAILED: gen/third_party/rust/autocxx/chromium_integration/tests/autocxx_basic_test/src/lib.rs/lib_gen0.cc gen/third_party/rust/autocxx/chromium_integration/tests/autocxx_basic_test/src/lib.rs/gen0.include.rs gen/third_party/rust/autocxx/chromium_integration/tests/autocxx_basic_test/src/lib.rs/lib_gen1.cc gen/third_party/rust/autocxx/chromium_integration/tests/autocxx_basic_test/src/lib.rs/gen0.h gen/third_party/rust/autocxx/chromium_integration/tests/autocxx_basic_test/src/lib.rs.h 
python3 ../../third_party/rust/autocxx/chromium_integration/run_autocxx_gen.py --exe /usr/local/google/home/adetaylor/chromium/src/out/Release/autocxx_gen --outdir gen/third_party/rust/autocxx/chromium_integration/tests/autocxx_basic_test/src/lib.rs --cxx-h-path third_party/rust/cxx/v1/crate/include/ --ld-library-path /usr/local/google/home/adetaylor/chromium/src/third_party/llvm-build/Release+Asserts/lib --output-prefix lib --header gen/third_party/rust/autocxx/chromium_integration/tests/autocxx_basic_test/src/lib.rs.h --source ../../third_party/rust/autocxx/chromium_integration/tests/autocxx_basic_test/src/lib.rs -- -DDCHECK_ALWAYS_ON=1 -DUSE_UDEV -DUSE_AURA=1 -DUSE_GLIB=1 -DUSE_OZONE=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DRUST_ENABLED -D_GNU_SOURCE -DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\" -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS -DCR_LIBCXX_REVISION=023270786d2400b294239d047fd1fb6c8688d86b -D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1 -D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1 -DCR_SYSROOT_KEY=20220331T153654Z-0 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_40 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_40 -I../.. -Igen -I../../buildtools/third_party/libc++ -I../../third_party/perfetto/include -Igen/third_party/perfetto/build_config -Igen/third_party/perfetto -I../../third_party/abseil-cpp -I../../third_party/boringssl/src/include -I../../third_party/protobuf/src -Igen/protoc_out -Wall -Werror -Wextra -Wimplicit-fallthrough -Wextra-semi -Wunreachable-code-aggressive -Wthread-safety -Wno-missing-field-initializers -Wno-unused-parameter -Wno-psabi -Wloop-analysis -Wno-unneeded-internal-declaration -Wenum-compare-conditional -Wno-ignored-pragma-optimize -Wno-deprecated-builtins -Wno-bitfield-constant-conversion -Wshadow -fno-delete-null-pointer-checks -fno-ident -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pthread -fcolor-diagnostics -fmerge-all-constants -fcrash-diagnostics-dir=../../tools/clang/crashreports -mllvm -instcombine-lower-dbg-declare=0 -ffp-contract=off -fcomplete-member-pointers -m64 -msse3 -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -ffile-compilation-dir=. -no-canonical-prefixes -ftrivial-auto-var-init=pattern -O2 -fdata-sections -ffunction-sections -fno-unique-section-names -fno-omit-frame-pointer -gdwarf-4 -g2 -gdwarf-aranges -ggnu-pubnames -Xclang -fuse-ctor-homing -fvisibility=hidden -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang raw-ref-template-as-trivial-member -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -isystem../../build/linux/debian_bullseye_amd64-sysroot/usr/include/glib-2.0 -isystem../../build/linux/debian_bullseye_amd64-sysroot/usr/lib/x86_64-linux-gnu/glib-2.0/include -DPROTOBUF_ALLOW_DEPRECATED=1 -std=c++20 -Wno-trigraphs -fno-exceptions -fno-rtti -nostdinc++ -isystem../../buildtools/third_party/libc++/trunk/include -isystem../../buildtools/third_party/libc++abi/trunk/include --sysroot=../../build/linux/debian_bullseye_amd64-sysroot -fvisibility-inlines-hidden -isystem../../third_party/llvm-build/Release+Asserts/lib/clang/16.0.0/include -fparse-all-comments -fvisibility=default -fno-visibility-inlines-hidden
thread 'main' panicked at 'Failed to find a candidate; there must be a circular dependency. Queue is GURL_WriteIntoTrace_autocxx_wrapper: GURL
InitializeFromCanonicalSpec: GURL
IsAboutUrl_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete,bool
ComponentString_autocxx_wrapper: GURL,url::Component,std::string
ComponentStringPiece_autocxx_wrapper: GURL,url::Component,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
ProcessFileSystemURLAfterReplaceComponents: GURL
GURL_new_autocxx_autocxx_wrapper: GURL
GURL_new1_autocxx_wrapper: GURL
GURL_new2_autocxx_wrapper: GURL
GURL_new3_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
GURL_new4_autocxx_wrapper: GURL,base::StringPiece16,base_BasicStringPiece_char16_t_AutocxxConcrete
GURL_new5_autocxx_wrapper: GURL,std::os::raw::c_char,usize,url::Parsed,bool
new6_autocxx_wrapper: GURL,std::string,url::Parsed,bool
new7_autocxx_wrapper: GURL,std::string,GURL_RetainWhiteSpaceSelector
GURL_destructor_autocxx_wrapper: GURL
url::Parsed_alloc_autocxx_wrapper: url::Parsed
url::Parsed_free_autocxx_wrapper: url::Parsed
url::Parsed: url::Component,bool,url::Parsed
url::Replacements_alloc_autocxx_wrapper: url::Replacements
url::Replacements_free_autocxx_wrapper: url::Replacements
url::Replacements: url::Parsed
url::StringPieceReplacements_alloc_autocxx_wrapper: url::StringPieceReplacements
url::StringPieceReplacements_free_autocxx_wrapper: url::StringPieceReplacements
url::StringPieceReplacements: url::Replacements
url::url_Parsed_operator_equals_autocxx_wrapper: url::Parsed
url::Length: url::Parsed,std::os::raw::c_int
url::CountCharactersBefore: url::Parsed,url::Parsed_ComponentType,bool,std::os::raw::c_int
url::GetContent_autocxx_wrapper: url::Parsed,url::Component
url::inner_parsed: url::Parsed
url::set_inner_parsed: url::Parsed
url::clear_inner_parsed: url::Parsed
url::url_Parsed_new_autocxx_autocxx_wrapper: url::Parsed
url::url_Parsed_new1_autocxx_wrapper: url::Parsed
url::Parsed_destructor_autocxx_wrapper: url::Parsed
url::GetURL_autocxx_wrapper: url::SchemeHostPort,GURL
url::SerializeInternal_autocxx_wrapper: url::SchemeHostPort,url::Parsed,std::string
url::url_SchemeHostPort_new3_autocxx_wrapper: url::SchemeHostPort,GURL
url::url_Origin_Create_autocxx_wrapper: GURL,url::Origin
url::Resolve_autocxx_wrapper: GURL,url::Origin
url::IsSameOriginWith1: url::Origin,GURL,bool
url::CanBeDerivedFrom: url::Origin,GURL,bool
url::url_Origin_GetURL_autocxx_wrapper: url::Origin,GURL
GURL_alloc_autocxx_wrapper: GURL
GURL_free_autocxx_wrapper: GURL
GURL: std::string,bool,url::Parsed,std::unique_ptr,GURL
GURL_operator_equals_autocxx_wrapper: GURL
GURL_operator_equals1_autocxx_wrapper: GURL
GURL_is_valid_autocxx_wrapper: GURL,bool
GURL_is_empty_autocxx_wrapper: GURL,bool
spec: GURL,std::string
possibly_invalid_spec: GURL,std::string
parsed_for_possibly_invalid_spec: GURL,url::Parsed
GURL_Resolve_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
Resolve1_autocxx_wrapper: GURL,base::StringPiece16,base_BasicStringPiece_char16_t_AutocxxConcrete
ReplaceComponents_autocxx_wrapper: GURL,GURL_Replacements,url_StringPieceReplacements_char_AutocxxConcrete
ReplaceComponents1_autocxx_wrapper: GURL,GURL_ReplacementsW,url_StringPieceReplacements_char16_t_AutocxxConcrete
GetWithEmptyPath_autocxx_wrapper: GURL
GetWithoutFilename_autocxx_wrapper: GURL
DeprecatedGetOriginAsURL_autocxx_wrapper: GURL
GetAsReferrer_autocxx_wrapper: GURL
IsStandard: GURL,bool
IsAboutBlank: GURL,bool
IsAboutSrcdoc: GURL,bool
SchemeIs_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete,bool
SchemeIsHTTPOrHTTPS: GURL,bool
SchemeIsWSOrWSS: GURL,bool
SchemeIsFile: GURL,bool
SchemeIsFileSystem: GURL,bool
SchemeIsCryptographic: GURL,bool
SchemeIsBlob: GURL,bool
SchemeIsLocal: GURL,bool
GURL_GetContent_autocxx_wrapper: GURL,std::string
GetContentPiece_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
HostIsIPAddress: GURL,bool
has_scheme: GURL,bool
GURL_scheme_autocxx_wrapper: GURL,std::string
scheme_piece_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
has_username: GURL,bool
username_autocxx_wrapper: GURL,std::string
username_piece_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
has_password: GURL,bool
password_autocxx_wrapper: GURL,std::string
password_piece_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
has_host: GURL,bool
GURL_host_autocxx_wrapper: GURL,std::string
host_piece_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
has_port: GURL,bool
GURL_port_autocxx_wrapper: GURL,std::string
port_piece_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
has_path: GURL,bool
path_autocxx_wrapper: GURL,std::string
path_piece_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
has_query: GURL,bool
query_autocxx_wrapper: GURL,std::string
query_piece_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
has_ref: GURL,bool
ref_autocxx_wrapper: GURL,std::string
ref_piece_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
IntPort: GURL,std::os::raw::c_int
EffectiveIntPort: GURL,std::os::raw::c_int
ExtractFileName_autocxx_wrapper: GURL,std::string
PathForRequest_autocxx_wrapper: GURL,std::string
PathForRequestPiece_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
HostNoBrackets_autocxx_wrapper: GURL,std::string
HostNoBracketsPiece_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete
GURL_DomainIs_autocxx_wrapper: GURL,base::StringPiece,base_BasicStringPiece_char_AutocxxConcrete,bool
EqualsIgnoringRef: GURL,bool
Swap: GURL
EmptyGURL_autocxx_wrapper: GURL
inner_url: GURL
EstimateMemoryUsage: GURL,usize', ../../third_party/rust/autocxx_engine/v0_23/crate/src/conversion/analysis/depth_first.rs:45:17
@adetaylor adetaylor added the bug Something isn't working label Nov 8, 2022
adetaylor added a commit that referenced this issue Nov 8, 2022
@adetaylor
Copy link
Collaborator Author

Fixed by #1187.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant