diff --git a/infra/indexer/frontend/ast_visitor.cc b/infra/indexer/frontend/ast_visitor.cc index e413944d88a1..c5d79a9f8147 100644 --- a/infra/indexer/frontend/ast_visitor.cc +++ b/infra/indexer/frontend/ast_visitor.cc @@ -45,6 +45,7 @@ #include "clang/Sema/Sema.h" #include "llvm/ADT/APSInt.h" #include "llvm/ADT/ArrayRef.h" +#include "llvm/ADT/FoldingSet.h" #include "llvm/ADT/MapVector.h" #include "llvm/ADT/SmallPtrSet.h" #include "llvm/ADT/SmallSet.h" @@ -139,9 +140,9 @@ const clang::ClassTemplateSpecializationDecl* FindSpecialization( // lead to loading external specializations. Arguably this could have been // handled through `mutable` fields because logically this doesn't affect the // forthcoming behavior of the object. - void* insert_pos = nullptr; + llvm::FoldingSetInsertToken insert_token; return const_cast(class_template_decl) - ->findSpecialization(canonical_args, insert_pos); + ->findSpecialization(canonical_args, insert_token); } // Helper functions to find the closest explicit template specialization that diff --git a/projects/tailscale/Dockerfile b/projects/tailscale/Dockerfile index 58c3c0533bd3..0c928a08ad0b 100644 --- a/projects/tailscale/Dockerfile +++ b/projects/tailscale/Dockerfile @@ -15,13 +15,15 @@ ################################################################################ FROM gcr.io/oss-fuzz-base/base-builder-go -RUN apt-get update && apt-get install -y wget + +# The Go version is intentionally not pinned here. tailscale's go.mod (`go` +# directive) is the single source of truth; GOTOOLCHAIN=auto fetches a matching +# toolchain at build time if the base image's bundled Go is older, and +# fuzz/oss-fuzz.sh copies it to a writable dir so go-118-fuzz-build_v2 can +# overlay its testing/fuzz.go. Bumping Go = editing go.mod in the tailscale repo; +# this Dockerfile stays untouched. + RUN git clone --depth 1 https://github.com/tailscale/tailscale -RUN wget https://go.dev/dl/go1.23.1.linux-amd64.tar.gz \ - && mkdir temp-go \ - && rm -rf /root/.go/* \ - && tar -C temp-go/ -xzf go1.23.1.linux-amd64.tar.gz \ - && mv temp-go/go/* /root/.go/ COPY build.sh $SRC/ WORKDIR $SRC/tailscale diff --git a/projects/tailscale/build.sh b/projects/tailscale/build.sh index 47f281ad7798..c2507074d0ae 100644 --- a/projects/tailscale/build.sh +++ b/projects/tailscale/build.sh @@ -15,4 +15,4 @@ # ################################################################################ -compile_go_fuzzer tailscale.com/net/stun FuzzStunParser stun_parser_fuzzer +bash -x ./fuzz/oss-fuzz.sh