[dylan-lang/opendylan] 744241: [dfmc] Default to <raw-c-void> for FFI calls witho...

GitHub <[email protected]>
Newsgroups gmane.comp.lang.dylan.gwydion.cvs
Message-ID <556e97d820ab1_c843ff5d56352bc1150c6@hookshot-fe2-cp1-prd.iad.github.net.mail>
  Branch: refs/heads/master
  Home:   https://github.com/dylan-lang/opendylan
  Commit: 7442412113c707a4d6d6fd7d80d2c5f934026bd8
      https://github.com/dylan-lang/opendylan/commit/7442412113c707a4d6d6fd7d80d2c5f934026bd8
  Author: Bruce Mitchener <[email protected]>
  Date:   2015-06-02 (Tue, 02 Jun 2015)

  Changed paths:
    M documentation/release-notes/source/2015.1.rst
    M sources/dfmc/c-back-end/c-emit-c-computation.dylan
    M sources/dfmc/c-linker/c-link-c-object.dylan
    M sources/dfmc/conversion/convert-c-ffi.dylan

  Log Message:
  -----------
  [dfmc] Default to <raw-c-void> for FFI calls without return values.

When no return values are specified in %call-c-function or
%objc-msgsend, we shouldn't have to explicitly say <raw-c-void>
is the return type, the "=> ()" should be sufficient.

Fixes #730.

* sources/dfmc/conversion/convert-c-ffi.dylan
  (parse-ffi-result-type): New method to replace an empty result
    specification with a <raw-c-void> result type.
  (&converter %call-c-function): Use parse-ffi-result-type.
  (&converter %call-c-function-indirect): Use parse-ffi-result-type.
  (&converter %objc-msgsend): Use parse-ffi-result-type.

* sources/dfmc/c-back-end/c-emit-c-computation.dylan
  (emit-primitive-call on <&objc-msgsend>): Default to <raw-c-void>
    if there are no specified result types. This should never happen
    given that conversion always supplies a result type.

* sources/dfmc/c-linker/c-link-c-object.dylan
  (emit-forward on <&c-function>): Default to <raw-c-void>
    if there are no specified result types. This should never happen
    given that conversion always supplies a result type.


  Commit: 45b9c442fbc060760ca25368284108a7b8a581a3
      https://github.com/dylan-lang/opendylan/commit/45b9c442fbc060760ca25368284108a7b8a581a3
  Author: Bruce Mitchener <[email protected]>
  Date:   2015-06-02 (Tue, 02 Jun 2015)

  Changed paths:
    M sources/common-dylan/timers.dylan
    M sources/common-dylan/win32-common-extensions.dylan
    M sources/system/unix-operating-system.dylan
    M sources/system/win32-date-interface.dylan
    M sources/system/x86-win32-operating-system.dylan

  Log Message:
  -----------
  Remove explicit <raw-c-void> return values.

These are now handled correctly by the compiler when the value
list is empty.

* sources/common-dylan/timers.dylan
  (macro with-storage): Update.
  (%timer-current-time): Update.

* sources/common-dylan/win32-common-extensions.dylan
  (default-random-seed): Update.

* sources/system/unix-operating-system.dylan
  (macro with-storage): Update.
  (run-application): Update.

* sources/system/win32-date-interface.dylan
  (macro with-localtime-as-systemtime): Update.

* sources/system/x86-win32-operating-system
  (environment-variable): Update.


  Commit: 84c9e85b90df90930e4ac6654f6aa4147b7dcaa0
      https://github.com/dylan-lang/opendylan/commit/84c9e85b90df90930e4ac6654f6aa4147b7dcaa0
  Author: Peter S. Housel <[email protected]>
  Date:   2015-06-02 (Tue, 02 Jun 2015)

  Changed paths:
    M documentation/release-notes/source/2015.1.rst
    M sources/common-dylan/timers.dylan
    M sources/common-dylan/win32-common-extensions.dylan
    M sources/dfmc/c-back-end/c-emit-c-computation.dylan
    M sources/dfmc/c-linker/c-link-c-object.dylan
    M sources/dfmc/conversion/convert-c-ffi.dylan
    M sources/system/unix-operating-system.dylan
    M sources/system/win32-date-interface.dylan
    M sources/system/x86-win32-operating-system.dylan

  Log Message:
  -----------
  Merge pull request #917 from waywardmonkeys/fix-c-function-return-type-default

Fix c function return type default


Compare: https://github.com/dylan-lang/opendylan/compare/618b266921a0...84c9e85b90df

_______________________________________________
chatter mailing list
[email protected]
https://lists.opendylan.org/mailman/listinfo/chatter
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.