diff options
author | Jakub Dupak <dev@jakubdupak.com> | 2024-02-27 23:59:36 +0100 |
---|---|---|
committer | P-E-P <32375388+P-E-P@users.noreply.github.com> | 2024-05-06 12:23:49 +0000 |
commit | 5f0db57567e147846cd0b7aa4cb2fc8bba9208a0 (patch) | |
tree | 615532c6a624c338e5864992e404c26489124dca /gcc | |
parent | ab8b4cc38806e1a7190a7426ce073951752d1a60 (diff) | |
download | gcc-5f0db57567e147846cd0b7aa4cb2fc8bba9208a0.zip gcc-5f0db57567e147846cd0b7aa4cb2fc8bba9208a0.tar.gz gcc-5f0db57567e147846cd0b7aa4cb2fc8bba9208a0.tar.bz2 |
borrowck: Link Polonius and run it
gcc/rust/ChangeLog:
* Make-lang.in: Link Polonius.
* checks/errors/borrowck/rust-borrow-checker.cc: Run Polonius.
Signed-off-by: Jakub Dupak <dev@jakubdupak.com>
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/rust/Make-lang.in | 7 | ||||
-rw-r--r-- | gcc/rust/checks/errors/borrowck/rust-borrow-checker.cc | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/rust/Make-lang.in b/gcc/rust/Make-lang.in index 3275015..dd94c9b 100644 --- a/gcc/rust/Make-lang.in +++ b/gcc/rust/Make-lang.in @@ -227,12 +227,15 @@ rust_OBJS = $(RUST_ALL_OBJS) rust/rustspec.o LIBPROC_MACRO_INTERNAL = ../libgrust/libproc_macro_internal/libproc_macro_internal.a LIBFORMAT_PARSER = ../libgrust/libformat_parser/debug/liblibformat_parser.a +LIBFFI_POLONIUS = rust/libffi_polonius.a # The compiler itself is called crab1 -crab1$(exeext): $(RUST_ALL_OBJS) attribs.o $(BACKEND) $(LIBDEPS) $(LIBPROC_MACRO_INTERNAL) $(LIBFORMAT_PARSER) $(rust.prev) +crab1$(exeext): $(RUST_ALL_OBJS) attribs.o $(BACKEND) $(LIBDEPS) $(LIBPROC_MACRO_INTERNAL) $(LIBFORMAT_PARSER) $(LIBFFI_POLONIUS) $(rust.prev) @$(call LINK_PROGRESS,$(INDEX.rust),start) +$(LLINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ \ - $(RUST_ALL_OBJS) attribs.o $(BACKEND) $(LIBS) $(LIBPROC_MACRO_INTERNAL) $(LIBFORMAT_PARSER) $(BACKENDLIBS) + $(RUST_ALL_OBJS) attribs.o $(BACKEND) \ + $(LIBS) $(LIBPROC_MACRO_INTERNAL) $(LIBFORMAT_PARSER) $(LIBFFI_POLONIUS) \ + $(BACKENDLIBS) @$(call LINK_PROGRESS,$(INDEX.rust),end) # Build hooks. diff --git a/gcc/rust/checks/errors/borrowck/rust-borrow-checker.cc b/gcc/rust/checks/errors/borrowck/rust-borrow-checker.cc index a2351c5..168b705 100644 --- a/gcc/rust/checks/errors/borrowck/rust-borrow-checker.cc +++ b/gcc/rust/checks/errors/borrowck/rust-borrow-checker.cc @@ -154,6 +154,8 @@ BorrowChecker::go (HIR::Crate &crate) dump_facts_to_file ("placeholder", &Polonius::Facts::dump_placeholder); } + + Polonius::polonius_run (facts.freeze (), rust_be_debug_p ()); } for (auto closure ATTRIBUTE_UNUSED : collector.get_closures ()) |