From 1acddf70db7dce462f6fddeda546eecc4fdf444a Mon Sep 17 00:00:00 2001 From: Fabio Madge Date: Thu, 4 Jan 2024 19:48:26 +0100 Subject: [PATCH] fix: Initialize additional fields in the AST (#4930) Fixes #4893 --- .../DafnyCore/AST/TypeDeclarations/NewtypeDecl.cs | 1 + .../LitTest/git-issues/git-issue-4893.dfy | 15 +++++++++++++++ .../LitTest/git-issues/git-issue-4893.dfy.expect | 2 ++ docs/dev/news/4930.fix | 1 + 4 files changed, 19 insertions(+) create mode 100644 Source/IntegrationTests/TestFiles/LitTests/LitTest/git-issues/git-issue-4893.dfy create mode 100644 Source/IntegrationTests/TestFiles/LitTests/LitTest/git-issues/git-issue-4893.dfy.expect create mode 100644 docs/dev/news/4930.fix diff --git a/Source/DafnyCore/AST/TypeDeclarations/NewtypeDecl.cs b/Source/DafnyCore/AST/TypeDeclarations/NewtypeDecl.cs index ba312250bd..ce41305f19 100644 --- a/Source/DafnyCore/AST/TypeDeclarations/NewtypeDecl.cs +++ b/Source/DafnyCore/AST/TypeDeclarations/NewtypeDecl.cs @@ -30,6 +30,7 @@ public NewtypeDecl(RangeToken rangeToken, Name name, ModuleDefinition module, Ty Contract.Requires(isRefining ^ (baseType != null)); Contract.Requires(members != null); BaseType = baseType; + this.NewSelfSynonym(); } public NewtypeDecl(RangeToken rangeToken, Name name, ModuleDefinition module, BoundVar bv, Expression constraint, SubsetTypeDecl.WKind witnessKind, Expression witness, List parentTraits, List members, Attributes attributes, bool isRefining) diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/git-issues/git-issue-4893.dfy b/Source/IntegrationTests/TestFiles/LitTests/LitTest/git-issues/git-issue-4893.dfy new file mode 100644 index 0000000000..56d6e389f1 --- /dev/null +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/git-issues/git-issue-4893.dfy @@ -0,0 +1,15 @@ +// RUN: %testDafnyForEachResolver --expect-exit-code=0 "%s" + +module A +{ + export + provides T + + newtype T = int +} + +module B +{ + import A + type X = A.T +} \ No newline at end of file diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/git-issues/git-issue-4893.dfy.expect b/Source/IntegrationTests/TestFiles/LitTests/LitTest/git-issues/git-issue-4893.dfy.expect new file mode 100644 index 0000000000..012f5b9937 --- /dev/null +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/git-issues/git-issue-4893.dfy.expect @@ -0,0 +1,2 @@ + +Dafny program verifier finished with 0 verified, 0 errors diff --git a/docs/dev/news/4930.fix b/docs/dev/news/4930.fix new file mode 100644 index 0000000000..e5715cf937 --- /dev/null +++ b/docs/dev/news/4930.fix @@ -0,0 +1 @@ +Initialize additional fields in the AST