Rune - Locked storage work
authorMatthew Dillon <dillon@apollo.backplane.com>
Thu, 24 Mar 2016 17:31:35 +0000 (10:31 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Thu, 24 Mar 2016 18:11:32 +0000 (11:11 -0700)
commitaf74004b49374b9b42176a214c1a3113c718405b
tree2bb4a62144464a9a20e3249982176d920029db31
parenteb79be14d0bd282274168d81079adf35229ee42c
Rune - Locked storage work

* Invert SF_UNLOCKED -> SF_LOCKED.  This way nominal sub-type creation
  assumes unlocked for intermediate types (i.e. 'int **ptr') during
  parsing.  Fixes some issues.

* Procedure return types are now locked.

* Compound stack types and sub-compound argument types are now locked.
  Note that fields in a class are never naturally locked, even if the
  class object is declared on the stack.

* Fix return storage locking status for GenDotExp()
16 files changed:
ext_x11/link/defs.h
ext_x11/link/xevent.c
libgen/backend_llvm.c
libgen/backend_ras.c
libgen/gen_context.c
libgen/gen_emit.c
libgen/gen_exp.c
libgen/gen_refstor.c
librune/defs.h
librune/heap.c
librune/parse2.c
librune/sym.h
librune/type.c
librune/typeq.c
libruntime/memory.c
tests/cmp1.d [changed mode: 0644->0755]