public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc/devel/rust/master] Merge #821 #822
@ 2022-06-08 11:55 Thomas Schwinge
  0 siblings, 0 replies; only message in thread
From: Thomas Schwinge @ 2022-06-08 11:55 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:cf913e7f2985fa5a2ab3bf8f3ba861855afe4e37

commit cf913e7f2985fa5a2ab3bf8f3ba861855afe4e37
Merge: 98fb902fb30 e532893ba43 d0e51dca2de
Author: bors[bot] <26634292+bors[bot]@users.noreply.github.com>
Date:   Thu Nov 25 16:12:02 2021 +0000

    Merge #821 #822
    
    821: Always update the type context for monoprhized items except type params r=philberty a=philberty
    
    We need to update the type context type with the newly monomorphized types
    we guarded against ADT's and functions because they were never added before
    though this does not work for generic reference's to ADT's this updates
    the check accordingly.
    
    
    822: Make TyTy::BaseType::contains_type_parameters non-virtual r=philberty a=philberty
    
    This is a second cleanup to the generic interfaces in the type system. The
    helper for contains type parameters is akin to asking if a type is concrete
    or not. If a type is not concrete ie: contains type parameters then this
    can be leveraged instead of adding more complexity.
    
    The TyTy::BaseType::is_concrete is already an abstract method forcing
    all types to implement it, this makes it much safer and fixes some bad
    infinite recursion bugs if we asked if a type contained type-parameters
    which in turn somtimes aksed if it was concrete or not which in turn
    again called contains_type_parameters. This cleans it all up. More
    cleanup to these interfaces can be done over time.
    
    
    Co-authored-by: Philip Herron <philip.herron@embecosm.com>

Diff:

 gcc/rust/typecheck/rust-substitution-mapper.cc |  4 +-
 gcc/rust/typecheck/rust-tyty.h                 | 63 +++++---------------------
 2 files changed, 13 insertions(+), 54 deletions(-)


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-06-08 11:55 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-08 11:55 [gcc/devel/rust/master] Merge #821 #822 Thomas Schwinge

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).