Skip to content

Commit

Permalink
fixes #20681
Browse files Browse the repository at this point in the history
  • Loading branch information
ringabout committed Oct 28, 2022
1 parent 2f9019d commit 25716e2
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 16 deletions.
2 changes: 0 additions & 2 deletions compiler/semexprs.nim
Original file line number Diff line number Diff line change
Expand Up @@ -3077,8 +3077,6 @@ proc semExpr(c: PContext, n: PNode, flags: TExprFlags = {}, expectedType: PType
of nkCurly: result = semSetConstr(c, n, expectedType)
of nkBracket:
result = semArrayConstr(c, n, flags, expectedType)
if n.typ != nil and n.typ.skipTypes(abstractRange).kind == tySequence:
result.typ = n.typ # keeps tySequence type for []
of nkObjConstr: result = semObjConstr(c, n, flags, expectedType)
of nkLambdaKinds: result = semProcAux(c, n, skProc, lambdaPragmas, flags)
of nkDerefExpr: result = semDeref(c, n)
Expand Down
19 changes: 5 additions & 14 deletions tests/objects/tobject_default_value.nim
Original file line number Diff line number Diff line change
Expand Up @@ -418,21 +418,12 @@ template main {.dirty.} =
var z {.noinit.}: Pure = Pure(id: 77)
doAssert z.id == 77

block: # bug #20681
type A = object
d: DateTime = DateTime()

block:
type TokenData = object
campaignMemberships = Table[string, string]()

let x = default(TokenData)
doAssert x.campaignMemberships.len == 0

when false: # todo fixme
block:
type TokenData = object
campaignMemberships = newTable[string, string]()

let x = default(TokenData)
doAssert x.campaignMemberships.len == 0
let x = default(A)
doAssert $x == "(d: Uninitialized DateTime)"


static: main()
Expand Down

0 comments on commit 25716e2

Please sign in to comment.