Uploaded image for project: 'Thrift'
  1. Thrift
  2. THRIFT-2130

Thrift's D library/test: parts of "make check" code do not compile with recent dmd-2.062 through dmd-2.064alpha

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 0.9
    • 0.9.2
    • D - Library
    • None
    • Patch Available

    Description

      make check for the D thrift bindings with recent dmd builds (2.062 - present) fails with errors. Full log after these two summaries.

      // first error message under dmd v2.064-devel-21b130d

      dmd -oflibthriftd.a -w -wi -Isrc -lib src/thrift/base.d src/thrift/async/base.d src/thrift/async/socket.d src/thrift/codegen/async_client.d src/thrift/codegen/async_client_pool.d src/thrift/codegen/base.d src/thrift/codegen/client.d src/thrift/codegen/client_pool.d src/thrift/codegen/idlgen.d src/thrift/codegen/processor.d src/thrift/protocol/base.d src/thrift/protocol/binary.d src/thrift/protocol/compact.d src/thrift/protocol/json.d src/thrift/protocol/processor.d src/thrift/server/base.d src/thrift/server/simple.d src/thrift/server/taskpool.d src/thrift/server/threaded.d src/thrift/server/transport/base.d src/thrift/server/transport/socket.d src/thrift/transport/base.d src/thrift/transport/buffered.d src/thrift/transport/file.d src/thrift/transport/framed.d src/thrift/transport/http.d src/thrift/transport/memory.d src/thrift/transport/piped.d src/thrift/transport/range.d src/thrift/transport/socket.d src/thrift/transport/zlib.d src/thrift/util/awaitable.d src/thrift/util/cancellation.d src/thrift/util/future.d src/thrift/util/hashset.d src/thrift/internal/algorithm.d src/thrift/internal/codegen.d src/thrift/internal/ctfe.d src/thrift/internal/endian.d src/thrift/internal/resource_pool.d src/thrift/internal/socket.d src/thrift/internal/traits.d src/thrift/internal/test/protocol.d src/thrift/internal/test/server.d
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(1686): Error: unrecognized trait isNested
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(1768): Error: template instance std.traits.isNested!(Duration) error instantiating
      ...
      

      // first error message under dmd 2.062

      dmd -L-levent ../libthriftd-event.a  -w -wi -O -release -inline -I../../../lib/d/src -Igen-d ../../../lib/d/libthriftd.a -ofclient_pool_test client_pool_test.d
      ../../../lib/d/src/thrift/internal/codegen.d(185): Error: alias thrift.internal.codegen.FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null).FieldNames recursive alias declaration
      ...
      

      full output of make check

                                         
      ##########
      ================= and for dmd 2.064alpha
      DMD64 D Compiler v2.064-devel-21b130d
      
      you@myhost:~/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d$ ls
      d-make-problem-notes   libthriftd.a        Makefile     Makefile.in  src
      d-make-problem-notes~  libthriftd-event.a  Makefile.am  README       test
      you@myhost:~/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d$ make check
      Making check in .
      make[1]: Entering directory `/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d'
      make  check-TESTS
      make[2]: Entering directory `/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d'
      mkdir -p unittest || exists unittest
      touch unittest/.directory
      dmd -gc -ofunittest/debug/thrift/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/async/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/async/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/async/libevent -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/async/libevent.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/async/socket -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/async/socket.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/codegen/async_client -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/async_client.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/codegen/async_client_pool -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/async_client_pool.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/codegen/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/codegen/client -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/client.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/codegen/client_pool -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/client_pool.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/codegen/idlgen -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/idlgen.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/codegen/processor -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/processor.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/protocol/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/protocol/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/protocol/binary -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/protocol/binary.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/protocol/compact -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/protocol/compact.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/protocol/json -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/protocol/json.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      src/thrift/protocol/json.d(524): Warning: explicit element-wise assignment (ch)[] = this.readJsonEscapeChar() is better than ch = this.readJsonEscapeChar()
      src/thrift/protocol/json.d(531): Warning: explicit element-wise assignment (ch)[] = kEscapeCharVals[cast(ulong)pos] is better than ch = kEscapeCharVals[cast(ulong)pos]
      src/thrift/protocol/json.d(524): Warning: explicit element-wise assignment (ch)[] = this.readJsonEscapeChar() is better than ch = this.readJsonEscapeChar()
      src/thrift/protocol/json.d(531): Warning: explicit element-wise assignment (ch)[] = kEscapeCharVals[cast(ulong)pos] is better than ch = kEscapeCharVals[cast(ulong)pos]
      dmd -gc -ofunittest/debug/thrift/protocol/processor -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/protocol/processor.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/server/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/server/simple -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/simple.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/server/nonblocking -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/nonblocking.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      src/thrift/server/nonblocking.d(1007): Warning: explicit element-wise assignment this.writeBuffer_[cast(ulong)0..cast(ulong)4] = (cast(ubyte[])& size[0LU..1LU])[] is better than this.writeBuffer_[cast(ulong)0..cast(ulong)4] = cast(ubyte[])& size[0LU..1LU]
      dmd -gc -ofunittest/debug/thrift/server/taskpool -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/taskpool.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/server/threaded -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/threaded.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/server/transport/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/transport/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/server/transport/socket -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/transport/socket.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/transport/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/transport/buffered -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/buffered.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      src/thrift/transport/buffered.d(136): Warning: explicit element-wise assignment this.writeAvail_[cast(ulong)0..buf.length] = (buf)[] is better than this.writeAvail_[cast(ulong)0..buf.length] = buf
      dmd -gc -ofunittest/debug/thrift/transport/file -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/file.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/transport/framed -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/framed.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/transport/http -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/http.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      src/thrift/transport/http.d(161): Warning: explicit element-wise assignment this.httpBuf_[cast(ulong)0..this.httpBufRemaining_.length] = (this.httpBufRemaining_)[] is better than this.httpBuf_[cast(ulong)0..this.httpBufRemaining_.length] = this.httpBufRemaining_
      dmd -gc -ofunittest/debug/thrift/transport/memory -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/memory.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/transport/piped -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/piped.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/transport/range -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/range.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/transport/socket -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/socket.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/transport/zlib -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/zlib.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/util/awaitable -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/util/awaitable.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/util/cancellation -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/util/cancellation.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/util/future -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/util/future.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/util/hashset -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/util/hashset.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/internal/algorithm -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/algorithm.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/internal/codegen -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/codegen.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/internal/ctfe -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/ctfe.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/internal/endian -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/endian.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/internal/resource_pool -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/resource_pool.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/internal/socket -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/socket.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/internal/traits -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/traits.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/internal/test/protocol -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/test/protocol.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -gc -ofunittest/debug/thrift/internal/test/server -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/test/server.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/async/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/async/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/async/libevent -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/async/libevent.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/async/socket -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/async/socket.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/codegen/async_client -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/async_client.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/codegen/async_client_pool -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/async_client_pool.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/codegen/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/codegen/client -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/client.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/codegen/client_pool -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/client_pool.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/codegen/idlgen -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/idlgen.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/codegen/processor -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/codegen/processor.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/protocol/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/protocol/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/protocol/binary -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/protocol/binary.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/protocol/compact -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/protocol/compact.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/protocol/json -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/protocol/json.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      src/thrift/protocol/json.d(524): Warning: explicit element-wise assignment (ch)[] = this.readJsonEscapeChar() is better than ch = this.readJsonEscapeChar()
      src/thrift/protocol/json.d(531): Warning: explicit element-wise assignment (ch)[] = kEscapeCharVals[cast(ulong)pos] is better than ch = kEscapeCharVals[cast(ulong)pos]
      src/thrift/protocol/json.d(524): Warning: explicit element-wise assignment (ch)[] = this.readJsonEscapeChar() is better than ch = this.readJsonEscapeChar()
      src/thrift/protocol/json.d(531): Warning: explicit element-wise assignment (ch)[] = kEscapeCharVals[cast(ulong)pos] is better than ch = kEscapeCharVals[cast(ulong)pos]
      dmd -O -release -ofunittest/release/thrift/protocol/processor -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/protocol/processor.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/server/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/server/simple -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/simple.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/server/nonblocking -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/nonblocking.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      src/thrift/server/nonblocking.d(1007): Warning: explicit element-wise assignment this.writeBuffer_[cast(ulong)0..cast(ulong)4] = (cast(ubyte[])& size[0LU..1LU])[] is better than this.writeBuffer_[cast(ulong)0..cast(ulong)4] = cast(ubyte[])& size[0LU..1LU]
      dmd -O -release -ofunittest/release/thrift/server/taskpool -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/taskpool.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/server/threaded -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/threaded.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/server/transport/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/transport/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/server/transport/socket -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/server/transport/socket.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      t/release/thrift/util/awaitable
      PASS: unittest/release/thrift/util/cancellation
      PASS: unittest/release/thrift/util/future
      PASS: unittest/release/thrift/util/hashset
      PASS: unittest/release/thrift/internal/algorithm
      PASS: unittest/release/thrift/internal/codegen
      PASS: unittest/release/thrift/internal/ctfe
      PASS: unittest/release/thrift/internal/endian
      PASS: unittest/release/thrift/internal/resource_pool
      PASS: unittest/release/thrift/internal/socket
      PASS: unittest/release/thrift/internal/traits
      PASS: unittest/release/thrift/internal/test/protocol
      PASS: unittest/release/thrift/internal/test/server
      ===================
      All 92 tests passed
      ===================
      make[2]: Leaving directory `/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d'
      make[1]: Leaving directory `/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d'
      Making check in test
      make[1]: Entering directory `/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d/test'
      make  check-TESTS check-local
      make[2]: Entering directory `/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d/test'
      dmd -L-levent ../libthriftd-event.a  -w -wi -O -release -inline -I../../../lib/d/src -Igen-d ../../../lib/d/libthriftd.a -ofclient_pool_test client_pool_test.d
      ../../../lib/d/src/thrift/internal/codegen.d(185): Error: alias thrift.internal.codegen.FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null).FieldNames recursive alias declaration
      ../../../lib/d/src/thrift/internal/codegen.d(259): Error: template instance thrift.internal.codegen.Target!(TArgsStruct!(ExTestService, "getPortInArray"), "opEquals") error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(348):        instantiated from here: Template!"opEquals"
      ../../../lib/d/src/thrift/internal/codegen.d(367):        instantiated from here: Instantiate!(PApply, "opEquals")
      ../../../lib/d/src/thrift/internal/codegen.d(183):        instantiated from here: All!(PApply, PApply)
      ../../../lib/d/src/thrift/codegen/base.d(438):        ... (2 instantiations, -v to show) ...
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/internal/codegen.d(348): Error: template instance thrift.internal.codegen.PApply!(isValueMember, TArgsStruct!(ExTestService, "getPortInArray")).Template!"opEquals" error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(367):        instantiated from here: Instantiate!(PApply, "opEquals")
      ../../../lib/d/src/thrift/internal/codegen.d(183):        instantiated from here: All!(PApply, PApply)
      ../../../lib/d/src/thrift/codegen/base.d(438):        instantiated from here: FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null)
      ../../../lib/d/src/thrift/codegen/processor.d(107):        ... (1 instantiations, -v to show) ...
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/internal/codegen.d(367): Error: template instance thrift.internal.codegen.Instantiate!(PApply, "opEquals") error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(183):        instantiated from here: All!(PApply, PApply)
      ../../../lib/d/src/thrift/codegen/base.d(438):        instantiated from here: FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null)
      ../../../lib/d/src/thrift/codegen/processor.d(107):        instantiated from here: TArgsStruct!(ExTestService, "getPortInArray")
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/internal/codegen.d(367): Error: expression Instantiate!(PApply, "opEquals") of type void does not have a boolean value
      ../../../lib/d/src/thrift/internal/codegen.d(367): Error: expression Instantiate!(PApply, "opEquals") of type void does not have a boolean value
      ../../../lib/d/src/thrift/internal/codegen.d(226): Error: template instance thrift.internal.codegen.All!(PApply, PApply).pred!"opEquals" error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(226): Error: expression pred!"opEquals" of type void does not have a boolean value
      ../../../lib/d/src/thrift/internal/codegen.d(226): Error: expression pred!"opEquals" of type void does not have a boolean value
      ../../../lib/d/src/thrift/internal/codegen.d(229): Error: template instance thrift.internal.codegen.StaticFilter!(All, "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write") error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(179):        9 recursive instantiations from here: StaticFilter!(All, "thrift", "This", "", "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write")
      ../../../lib/d/src/thrift/codegen/base.d(438):        instantiated from here: FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null)
      ../../../lib/d/src/thrift/codegen/processor.d(107):        instantiated from here: TArgsStruct!(ExTestService, "getPortInArray")
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/internal/codegen.d(229): Error: template instance thrift.internal.codegen.StaticFilter!(All, "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write") error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(179):        8 recursive instantiations from here: StaticFilter!(All, "thrift", "This", "", "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write")
      ../../../lib/d/src/thrift/codegen/base.d(438):        instantiated from here: FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null)
      ../../../lib/d/src/thrift/codegen/processor.d(107):        instantiated from here: TArgsStruct!(ExTestService, "getPortInArray")
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/internal/codegen.d(229): Error: template instance thrift.internal.codegen.StaticFilter!(All, "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write") error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(179):        7 recursive instantiations from here: StaticFilter!(All, "thrift", "This", "", "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write")
      ../../../lib/d/src/thrift/codegen/base.d(438):        instantiated from here: FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null)
      ../../../lib/d/src/thrift/codegen/processor.d(107):        instantiated from here: TArgsStruct!(ExTestService, "getPortInArray")
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/internal/codegen.d(229): Error: template instance thrift.internal.codegen.StaticFilter!(All, "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write") error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(179):        6 recursive instantiations from here: StaticFilter!(All, "thrift", "This", "", "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write")
      ../../../lib/d/src/thrift/codegen/base.d(438):        instantiated from here: FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null)
      ../../../lib/d/src/thrift/codegen/processor.d(107):        instantiated from here: TArgsStruct!(ExTestService, "getPortInArray")
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/internal/codegen.d(229): Error: template instance thrift.internal.codegen.StaticFilter!(All, "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write") error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(179):        5 recursive instantiations from here: StaticFilter!(All, "thrift", "This", "", "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write")
      ../../../lib/d/src/thrift/codegen/base.d(438):        instantiated from here: FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null)
      ../../../lib/d/src/thrift/codegen/processor.d(107):        instantiated from here: TArgsStruct!(ExTestService, "getPortInArray")
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/internal/codegen.d(229): Error: template instance thrift.internal.codegen.StaticFilter!(All, "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write") error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(179):        4 recursive instantiations from here: StaticFilter!(All, "thrift", "This", "", "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write")
      ../../../lib/d/src/thrift/codegen/base.d(438):        instantiated from here: FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null)
      ../../../lib/d/src/thrift/codegen/processor.d(107):        instantiated from here: TArgsStruct!(ExTestService, "getPortInArray")
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/internal/codegen.d(229): Error: template instance thrift.internal.codegen.StaticFilter!(All, "", "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write") error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(179):        3 recursive instantiations from here: StaticFilter!(All, "thrift", "This", "", "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write")
      ../../../lib/d/src/thrift/codegen/base.d(438):        instantiated from here: FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null)
      ../../../lib/d/src/thrift/codegen/processor.d(107):        instantiated from here: TArgsStruct!(ExTestService, "getPortInArray")
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/internal/codegen.d(229): Error: template instance thrift.internal.codegen.StaticFilter!(All, "This", "", "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write") error instantiating
      ../../../lib/d/src/thrift/internal/codegen.d(179):        instantiated from here: StaticFilter!(All, "thrift", "This", "", "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write")
      ../../../lib/d/src/thrift/codegen/base.d(438):        instantiated from here: FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null)
      ../../../lib/d/src/thrift/codegen/processor.d(107):        instantiated from here: TArgsStruct!(ExTestService, "getPortInArray")
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/internal/codegen.d(179): Error: template instance thrift.internal.codegen.StaticFilter!(All, "thrift", "This", "", "fieldMeta", "set", "unset", "isSet", "toString", "opEquals", "thriftToStringImpl", "thriftOpEqualsImpl", "read", "write") error instantiating
      ../../../lib/d/src/thrift/codegen/base.d(438):        instantiated from here: FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null)
      ../../../lib/d/src/thrift/codegen/processor.d(107):        instantiated from here: TArgsStruct!(ExTestService, "getPortInArray")
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/codegen/base.d(438): Error: template instance thrift.internal.codegen.FieldNames!(TArgsStruct!(ExTestService, "getPortInArray"), null) error instantiating
      ../../../lib/d/src/thrift/codegen/processor.d(107):        instantiated from here: TArgsStruct!(ExTestService, "getPortInArray")
      ../../../lib/d/src/thrift/codegen/processor.d(100):        instantiated from here: process_getPortInArray!(TProtocol, TProtocol)
      client_pool_test.d(121):        instantiated from here: TServiceProcessor!(ExTestService)
      ../../../lib/d/src/thrift/codegen/base.d(450): Error: CTFE failed because of previous errors in __lambda2828
      ../../../lib/d/src/thrift/codegen/processor.d(107): Error: template instance thrift.codegen.processor.TArgsStruct!(ExTestService, "getPortInArray") error instantiating
      make[2]: *** [client_pool_test] Error 1
      make[2]: Leaving directory `/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d/test'
      make[1]: *** [check-am] Error 2
      make[1]: Leaving directory `/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d/test'
      make: *** [check-recursive] Error 1
      you@myhost:~/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d$ 
      
      
      
      ============ ##### for dmd 2.062
      
      root@myhost:/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d# make
      Making all in .
      make[1]: Entering directory `/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d'
      dmd -oflibthriftd-event.a -w -wi -Isrc -lib src/thrift/async/libevent.d src/thrift/server/nonblocking.d
      dmd -oflibthriftd.a -w -wi -Isrc -lib src/thrift/base.d src/thrift/async/base.d src/thrift/async/socket.d src/thrift/codegen/async_client.d src/thrift/codegen/async_client_pool.d src/thrift/codegen/base.d src/thrift/codegen/client.d src/thrift/codegen/client_pool.d src/thrift/codegen/idlgen.d src/thrift/codegen/processor.d src/thrift/protocol/base.d src/thrift/protocol/binary.d src/thrift/protocol/compact.d src/thrift/protocol/json.d src/thrift/protocol/processor.d src/thrift/server/base.d src/thrift/server/simple.d src/thrift/server/taskpool.d src/thrift/server/threaded.d src/thrift/server/transport/base.d src/thrift/server/transport/socket.d src/thrift/transport/base.d src/thrift/transport/buffered.d src/thrift/transport/file.d src/thrift/transport/framed.d src/thrift/transport/http.d src/thrift/transport/memory.d src/thrift/transport/piped.d src/thrift/transport/range.d src/thrift/transport/socket.d src/thrift/transport/zlib.d src/thrift/util/awaitable.d src/thrift/util/cancellation.d src/thrift/util/future.d src/thrift/util/hashset.d src/thrift/internal/algorithm.d src/thrift/internal/codegen.d src/thrift/internal/ctfe.d src/thrift/internal/endian.d src/thrift/internal/resource_pool.d src/thrift/internal/socket.d src/thrift/internal/traits.d src/thrift/internal/test/protocol.d src/thrift/internal/test/server.d
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(1686): Error: unrecognized trait isNested
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(1768): Error: template instance std.traits.isNested!(Duration) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(1928):        instantiated from here: FieldTypeTuple!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2197):        instantiated from here: RepresentationTypeTuple!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2641):        instantiated from here: hasRawUnsharedAliasing!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(85):        ... (4 instantiations, -v to show) ...
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(458):        instantiated from here: hasLocalAliasing!(string, ulong, ulong, Duration, Duration)
      src/thrift/transport/file.d(622):        instantiated from here: spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(1928): Error: template instance std.traits.FieldTypeTuple!(Duration) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2197):        instantiated from here: RepresentationTypeTuple!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2641):        instantiated from here: hasRawUnsharedAliasing!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(85):        instantiated from here: hasLocalAliasing!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(458):        5 recursive instantiations from here: hasLocalAliasing!(string, ulong, ulong, Duration, Duration)
      src/thrift/transport/file.d(622):        instantiated from here: spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2197): Error: template instance std.traits.RepresentationTypeTuple!(Duration) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2641):        instantiated from here: hasRawUnsharedAliasing!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(85):        instantiated from here: hasLocalAliasing!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(458):        5 recursive instantiations from here: hasLocalAliasing!(string, ulong, ulong, Duration, Duration)
      src/thrift/transport/file.d(622):        instantiated from here: spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2188): Error: template instance isAssociativeArray!(Impl!(_error_)) isAssociativeArray!(Impl!(_error_)) does not match template declaration isAssociativeArray(T)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2188): Error: expression isAssociativeArray!(Impl!(_error_)) of type void does not have a boolean value
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2188): Error: expression isAssociativeArray!(Impl!(_error_)) of type void does not have a boolean value
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2197): Error: template instance std.traits.hasRawUnsharedAliasing!(Duration).Impl!(Impl!(_error_)) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2641):        instantiated from here: hasRawUnsharedAliasing!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(85):        instantiated from here: hasLocalAliasing!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(458):        5 recursive instantiations from here: hasLocalAliasing!(string, ulong, ulong, Duration, Duration)
      src/thrift/transport/file.d(622):        instantiated from here: spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2641): Error: template instance std.traits.hasRawUnsharedAliasing!(Duration) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(85):        instantiated from here: hasLocalAliasing!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(458):        5 recursive instantiations from here: hasLocalAliasing!(string, ulong, ulong, Duration, Duration)
      src/thrift/transport/file.d(622):        instantiated from here: spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/typetuple.d(617): Error: template instance F!(Impl!(_error_)) F!(Impl!(_error_)) does not match template declaration unsharedDelegate(T)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2642): Error: template instance std.typetuple.anySatisfy!(unsharedDelegate, Impl!(_error_)) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(85):        instantiated from here: hasLocalAliasing!(Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(458):        5 recursive instantiations from here: hasLocalAliasing!(string, ulong, ulong, Duration, Duration)
      src/thrift/transport/file.d(622):        instantiated from here: spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(85): Error: template instance std.traits.hasLocalAliasing!(Duration) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(86):        instantiated from here: hasLocalAliasing!(Duration, Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(86):        instantiated from here: hasLocalAliasing!(ulong, Duration, Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(86):        instantiated from here: hasLocalAliasing!(ulong, ulong, Duration, Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(458):        instantiated from here: hasLocalAliasing!(string, ulong, ulong, Duration, Duration)
      src/thrift/transport/file.d(622):        instantiated from here: spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(86): Error: template instance std.concurrency.hasLocalAliasing!(Duration, Duration) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(86):        instantiated from here: hasLocalAliasing!(ulong, Duration, Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(86):        instantiated from here: hasLocalAliasing!(ulong, ulong, Duration, Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(458):        instantiated from here: hasLocalAliasing!(string, ulong, ulong, Duration, Duration)
      src/thrift/transport/file.d(622):        instantiated from here: spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(86): Error: template instance std.concurrency.hasLocalAliasing!(ulong, Duration, Duration) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(86):        instantiated from here: hasLocalAliasing!(ulong, ulong, Duration, Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(458):        instantiated from here: hasLocalAliasing!(string, ulong, ulong, Duration, Duration)
      src/thrift/transport/file.d(622):        instantiated from here: spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(86): Error: template instance std.concurrency.hasLocalAliasing!(ulong, ulong, Duration, Duration) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(458):        instantiated from here: hasLocalAliasing!(string, ulong, ulong, Duration, Duration)
      src/thrift/transport/file.d(622):        instantiated from here: spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(458): Error: template instance std.concurrency.hasLocalAliasing!(string, ulong, ulong, Duration, Duration) error instantiating
      src/thrift/transport/file.d(622):        instantiated from here: spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration)
      src/thrift/transport/file.d(622): Error: template instance std.concurrency.spawn!(void function(string path, ulong chunkSize, ulong maxFlushBytes, Duration maxFlushInterval, Duration ioErrorSleepDuration), string,ulong,ulong,Duration,Duration) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(1686): Error: unrecognized trait isNested
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(1768): Error: template instance std.traits.isNested!(ShutdownMessage) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(1928):        instantiated from here: FieldTypeTuple!(ShutdownMessage)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2197):        instantiated from here: RepresentationTypeTuple!(ShutdownMessage)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2641):        instantiated from here: hasRawUnsharedAliasing!(ShutdownMessage)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(85):        ... (1 instantiations, -v to show) ...
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(583):        instantiated from here: hasLocalAliasing!(ShutdownMessage, Tid)
      src/thrift/transport/file.d(640):        instantiated from here: prioritySend!(ShutdownMessage,Tid)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(1928): Error: template instance std.traits.FieldTypeTuple!(ShutdownMessage) error instantiating
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2197):        instantiated from here: RepresentationTypeTuple!(ShutdownMessage)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2641):        instantiated from here: hasRawUnsharedAliasing!(ShutdownMessage)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(85):        instantiated from here: hasLocalAliasing!(ShutdownMessage)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/concurrency.d(583):        instantiated from here: hasLocalAliasing!(ShutdownMessage, Tid)
      src/thrift/transport/file.d(640):        instantiated from here: prioritySend!(ShutdownMessage,Tid)
      /home/you/pkg/dlang/dmd/dmd_from_src/2.062/install/include/d2/std/traits.d(2197): Error: template instance std.traits.RepresentationTypeTuple!(ShutdownMessage) error instantiating
      make[1]: *** [libthriftd.a] Error 1
      make[1]: Leaving directory `/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d'
      make: *** [all-recursive] Error 1
      root@myhost:/home/you/pkg/thrift/0.9.0/pkg/thrift-0.9.0/lib/d# 
      ../../lib/d/src -L-levent  src/thrift/internal/traits.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/internal/test/protocol -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/test/protocol.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/internal/test/server -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/test/server.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      PASS: unittest/debug/thrift/base
      PASS: unittest/debug/thrift/async/base
      PASS: unittest/debug/thrift/async/libevent
      PASS: unittest/debug/thrift/async/socket
      PASS: unittest/debug/thrift/codegen/async_client
      PASS: unittest/debug/thrift/codegen/async_client_pool
      PASS: unittest/debug/thrift/codegen/base
      PASS: unittest/debug/thrift/codegen/client
      PASS: unittest/debug/thrift/codegen/client_pool
      PASS: unittest/debug/thrift/codegen/idlgen
      PASS: unittest/debug/thrift/codegen/processor
      PASS: unittest/debug/thrift/protocol/base
      PASS: unittest/debug/thrift/protocol/binary
      PASS: unittest/debug/thrift/protocol/compact
      PASS: unittest/debug/thrift/protocol/json
      PASS: unittest/debug/thrift/protocol/processor
      PASS: unittest/debug/thrift/server/base
      PASS: unittest/debug/thrift/server/simple
      PASS: unittest/debug/thrift/server/nonblocking
      PASS: unittest/debug/thrift/server/taskpool
      PASS: unittest/debug/thrift/server/threaded
      PASS: unittest/debug/thrift/server/transport/base
      PASS: unittest/debug/thrift/server/transport/socket
      PASS: unittest/debug/thrift/transport/base
      PASS: unittest/debug/thrift/transport/buffered
      PASS: unittest/debug/thrift/transport/file
      PASS: unittest/debug/thrift/transport/framed
      PASS: unittest/debug/thrift/transport/http
      PASS: unittest/debug/thrift/transport/memory
      PASS: unittest/debug/thrift/transport/piped
      PASS: unittest/debug/thrift/transport/range
      PASS: unittest/debug/thrift/transport/socket
      PASS: unittest/debug/thrift/transport/zlib
      PASS: unittest/debug/thrift/util/awaitable
      PASS: unittest/debug/thrift/util/cancellation
      PASS: unittest/debug/thrift/util/future
      PASS: unittest/debug/thrift/util/hashset
      PASS: unittest/debug/thrift/internal/algorithm
      PASS: unittest/debug/thrift/internal/codegen
      PASS: unittest/debug/thrift/internal/ctfe
      PASS: unittest/debug/thrift/internal/endian
      PASS: unittest/debug/thrift/internal/resource_pool
      PASS: unittest/debug/thrift/internal/socket
      PASS: unittest/debug/thrift/internal/traits
      PASS: unittest/debug/thrift/internal/test/protocol
      PASS: unittest/debug/thrift/internal/test/server
      PASS: unittest/release/thrift/base
      PASS: unittest/release/thrift/async/base
      PASS: unittest/release/thrift/async/libevent
      PASS: unittest/release/thrift/async/socket
      PASS: unittest/release/thrift/codegen/async_client
      PASS: unittest/release/thrift/codegen/async_client_pool
      PASS: unittest/release/thrift/codegen/base
      PASS: unittest/release/thrift/codegen/client
      PASS: unittest/release/thrift/codegen/client_pool
      PASS: unittest/release/thrift/codegen/idlgen
      PASS: unittest/release/thrift/codegen/processor
      PASS: unittest/release/thrift/protocol/base
      PASS: unittest/release/thrift/protocol/binary
      PASS: unittest/release/thrift/protocol/compact
      PASS: unittest/release/thrift/protocol/json
      PASS: unittest/release/thrift/protocol/processor
      PASS: unittest/release/thrift/server/base
      PASS: unittest/release/thrift/server/simple
      PASS: unittest/release/thrift/server/nonblocking
      PASS: unittest/release/thrift/server/taskpool
      PASS: unittest/release/thrift/server/threaded
      PASS: unittest/release/thrift/server/transport/base
      PASS: unittest/release/thrift/server/transport/socket
      PASS: unittest/release/thrift/transport/base
      PASS: unittest/release/thrift/transport/buffered
      PASS: unittest/release/thrift/transport/file
      PASS: unittest/release/thrift/transport/framed
      PASS: unittest/release/thrift/transport/http
      PASS: unittest/release/thrift/transport/memory
      PASS: unittest/release/thrift/transport/piped
      PASS: unittest/release/thrift/transport/range
      PASS: unittest/release/thrift/transport/socket
      PASS: unittest/release/thrift/transport/zlib
      PASS: unittesdmd -O -release -ofunittest/release/thrift/transport/base -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/base.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/transport/buffered -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/buffered.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      src/thrift/transport/buffered.d(136): Warning: explicit element-wise assignment this.writeAvail_[cast(ulong)0..buf.length] = (buf)[] is better than this.writeAvail_[cast(ulong)0..buf.length] = buf
      dmd -O -release -ofunittest/release/thrift/transport/file -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/file.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/transport/framed -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/framed.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/transport/http -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/http.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      src/thrift/transport/http.d(161): Warning: explicit element-wise assignment this.httpBuf_[cast(ulong)0..this.httpBufRemaining_.length] = (this.httpBufRemaining_)[] is better than this.httpBuf_[cast(ulong)0..this.httpBufRemaining_.length] = this.httpBufRemaining_
      dmd -O -release -ofunittest/release/thrift/transport/memory -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/memory.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/transport/piped -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/piped.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/transport/range -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/range.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/transport/socket -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/socket.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/transport/zlib -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/transport/zlib.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/util/awaitable -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/util/awaitable.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/util/cancellation -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/util/cancellation.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/util/future -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/util/future.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/util/hashset -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/util/hashset.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/internal/algorithm -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/algorithm.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/internal/codegen -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/codegen.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/internal/ctfe -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/ctfe.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/internal/endian -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/endian.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/internal/resource_pool -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/resource_pool.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/internal/socket -unittest -w -wi -I../../lib/d/src -L-levent  src/thrift/internal/socket.d libthriftd-event.a libthriftd.a unittest/emptymain.d
      dmd -O -release -ofunittest/release/thrift/internal/traits -unittest -w -wi -I
      

      Attachments

        Activity

          No work has yet been logged on this issue.

          People

            roger Roger Meier
            drcode410 David Riley Coderon
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: