Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #66125 > unrolled thread

Generic function-calling code

Started byBartc <bc@freeuk.com>
First post2015-07-21 21:21 +0100
Last post2015-09-03 22:33 +0200
Articles 20 on this page of 153 — 26 participants

Back to article view | Back to comp.lang.c


Contents

  Generic function-calling code Bartc <bc@freeuk.com> - 2015-07-21 21:21 +0100
    Re: Generic function-calling code jacobnavia <jacob@jacob.remcomp.fr> - 2015-07-21 23:04 +0200
      Re: Generic function-calling code luser droog <luser.droog@gmail.com> - 2015-07-21 14:45 -0700
        Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-07-22 00:56 +0100
          Re: Generic function-calling code BGB <cr88192@hotmail.com> - 2015-07-22 00:25 -0500
            Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 02:37 -0700
              Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-07-22 11:50 +0100
                Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 04:29 -0700
                  Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-07-22 13:04 +0100
                    Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 05:44 -0700
                AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) gazelle@shell.xmission.com (Kenny McCormack) - 2015-07-22 12:50 +0000
                  Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 06:07 -0700
                    Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) gazelle@shell.xmission.com (Kenny McCormack) - 2015-07-22 13:30 +0000
                      Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 07:42 -0700
                        Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) David Brown <david.brown@hesbynett.no> - 2015-07-22 17:07 +0200
                          Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 08:16 -0700
                          Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Keith Thompson <kst-u@mib.org> - 2015-07-22 08:41 -0700
                            Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Keith Thompson <kst-u@mib.org> - 2015-07-22 08:47 -0700
                              Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 08:53 -0700
                              Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) David Brown <david.brown@hesbynett.no> - 2015-07-22 18:09 +0200
                            Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) David Kleinecke <dkleinecke@gmail.com> - 2015-07-22 16:38 -0700
                          Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Richard Heathfield <rjh@cpax.org.uk> - 2015-07-22 18:28 +0100
                            Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) James Kuyper <jameskuyper@verizon.net> - 2015-07-22 13:37 -0400
                              Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) BGB <cr88192@hotmail.com> - 2015-07-22 15:04 -0500
                            Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 10:39 -0700
                              Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Richard Heathfield <rjh@cpax.org.uk> - 2015-07-22 19:10 +0100
                                Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 11:39 -0700
                                  Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Richard Heathfield <rjh@cpax.org.uk> - 2015-07-22 20:01 +0100
                                    Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 12:06 -0700
                                      Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Richard Heathfield <rjh@cpax.org.uk> - 2015-07-22 20:51 +0100
                                      Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) guinness.tony@gmail.com - 2015-07-22 17:48 -0700
                                  Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) raltbos@xs4all.nl (Richard Bos) - 2015-07-22 19:50 +0000
                                    Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 13:15 -0700
                                      Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Richard Heathfield <rjh@cpax.org.uk> - 2015-07-22 21:28 +0100
                                        Re: Let's see who can be the most off-topic Gareth Owen <gwowen@gmail.com> - 2015-07-22 21:44 +0100
                                      Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Morris Dovey <mrdovey@iedu.com> - 2015-07-22 16:35 -0500
                                        Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 15:17 -0700
                                          Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Morris Dovey <mrdovey@iedu.com> - 2015-09-05 15:20 -0500
                                            Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-05 23:01 -0700
                                              Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) wssimms@gmail.com - 2015-09-06 01:58 -0700
                                                Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-06 02:28 -0700
                                                  Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Keith Thompson <kst-u@mib.org> - 2015-09-06 12:48 -0700
                                                Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-06 07:08 -0700
                                  Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Keith Thompson <kst-u@mib.org> - 2015-07-22 13:50 -0700
                              Re: Let's see who can be the most off-topic Gareth Owen <gwowen@gmail.com> - 2015-07-22 21:43 +0100
                                Re: Let's see who can be the most off-topic guinness.tony@gmail.com - 2015-07-22 17:43 -0700
                                  Re: Let's see who can be the most off-topic James Kuyper <jameskuyper@verizon.net> - 2015-07-24 10:41 -0400
                                    Re: Let's see who can be the most off-topic Richard Heathfield <rjh@cpax.org.uk> - 2015-07-24 16:01 +0100
                                      Re: Let's see who can be the most off-topic raltbos@xs4all.nl (Richard Bos) - 2015-07-25 19:20 +0000
                                    Re: Let's see who can be the most off-topic Gareth Owen <gwowen@gmail.com> - 2015-07-24 20:25 +0100
                        Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) Rosario19 <Ros@invalid.invalid> - 2015-07-23 20:41 +0200
                          Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-23 12:00 -0700
                  Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) Bartc <bc@freeuk.com> - 2015-07-22 17:43 +0100
                    Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) gazelle@shell.xmission.com (Kenny McCormack) - 2015-07-22 19:36 +0000
                      Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) Bartc <bc@freeuk.com> - 2015-07-22 23:19 +0100
                        Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-22 15:43 -0700
                        Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) Bartc <bc@freeuk.com> - 2015-07-22 23:47 +0100
                          Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-23 04:44 -0700
                            Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) Bartc <bc@freeuk.com> - 2015-07-23 13:14 +0100
                              Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-23 06:26 -0700
                                Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) Bartc <bc@freeuk.com> - 2015-07-23 15:00 +0100
                                  Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-23 07:13 -0700
                              Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) Bartc <bc@freeuk.com> - 2015-07-23 18:02 +0100
                                Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-23 10:05 -0700
                                  Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) Bartc <bc@freeuk.com> - 2015-07-23 18:19 +0100
                                    Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-23 10:37 -0700
                                  Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) Bartc <bc@freeuk.com> - 2015-07-23 23:29 +0100
                          Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code) gazelle@shell.xmission.com (Kenny McCormack) - 2015-07-23 16:18 +0000
                Re: Generic function-calling code Richard Damon <Richard@Damon-Family.org> - 2015-07-24 01:21 -0400
            Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-07-22 13:23 +0100
              Re: Generic function-calling code Ian Collins <ian-news@hotmail.com> - 2015-07-23 07:44 +1200
                Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-07-22 22:24 +0100
        Re: Generic function-calling code luser droog <luser.droog@gmail.com> - 2015-07-22 10:29 -0700
        Re: Generic function-calling code luser droog <luser.droog@gmail.com> - 2015-07-22 10:32 -0700
      Re: Generic function-calling code Keith Thompson <kst-u@mib.org> - 2015-07-21 15:38 -0700
    Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-21 17:26 -0700
    Re: Generic function-calling code Ian Collins <ian-news@hotmail.com> - 2015-07-22 14:27 +1200
    Re: Generic function-calling code gazelle@shell.xmission.com (Kenny McCormack) - 2015-07-22 02:39 +0000
    Re: Generic function-calling code Lőrinczy Zsigmond <zsiga@nospam.for.me> - 2015-07-23 09:28 +0200
    Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-23 19:04 -0700
    Re: Generic function-calling code owen.jacobson@grimoire.ca - 2015-07-24 08:32 -0700
      Re: Generic function-calling code gazelle@shell.xmission.com (Kenny McCormack) - 2015-07-24 18:48 +0000
      Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-07-24 20:22 +0100
        Re: Generic function-calling code Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-07-25 03:03 -0700
    Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-25 13:32 -0700
      Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-07-25 23:28 +0100
        Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-26 06:18 -0700
          Re: Generic function-calling code gazelle@shell.xmission.com (Kenny McCormack) - 2015-07-26 13:39 +0000
            Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-26 07:33 -0700
              Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-07-26 16:21 +0100
                Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-07-26 08:39 -0700
    Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-26 05:37 -0700
      Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-08-26 14:36 +0100
        Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-26 06:46 -0700
          Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-08-26 16:11 +0100
            Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-26 08:20 -0700
    Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-27 16:53 -0700
      Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-08-28 01:03 +0100
        Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-30 05:36 -0700
          Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-30 06:35 -0700
            Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-30 06:43 -0700
            Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-08-30 15:10 +0100
              Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-30 08:59 -0700
                Re: Generic function-calling code Geoff <geoff@invalid.invalid> - 2015-08-30 10:54 -0700
                  Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-30 10:57 -0700
                    Re: Generic function-calling code Geoff <geoff@invalid.invalid> - 2015-08-30 11:13 -0700
                      Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-30 11:16 -0700
                        Re: Generic function-calling code Geoff <geoff@invalid.invalid> - 2015-08-30 11:59 -0700
                          Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-30 12:15 -0700
                            Re: Generic function-calling code Geoff <geoff@invalid.invalid> - 2015-08-30 12:57 -0700
                              Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-30 13:40 -0700
                    Re: Generic function-calling code Geoff <geoff@invalid.invalid> - 2015-08-30 11:15 -0700
                      Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-08-30 11:28 -0700
                        Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-08-30 20:11 +0100
                          Re: Generic function-calling code David Brown <david.brown@hesbynett.no> - 2015-08-30 22:28 +0200
                          Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-01 01:13 -0700
                            Re: Generic function-calling code Philip Lantz <prl@canterey.us> - 2015-09-03 00:40 -0700
                              Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 01:26 -0700
                                Re: Generic function-calling code David Brown <david.brown@hesbynett.no> - 2015-09-03 11:34 +0200
                                  Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 03:15 -0700
                                    Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 03:21 -0700
                                    Re: Generic function-calling code David Brown <david.brown@hesbynett.no> - 2015-09-03 13:07 +0200
                                      Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 04:30 -0700
                                        Re: Generic function-calling code David Brown <david.brown@hesbynett.no> - 2015-09-03 13:39 +0200
                                          Re: Generic function-calling code Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-03 07:20 -0700
                                            Re: Generic function-calling code David Brown <david.brown@hesbynett.no> - 2015-09-03 20:25 +0200
                                              Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 11:30 -0700
                                                Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 11:44 -0700
                                  Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-09-03 11:21 +0100
                                    Re: Generic function-calling code David Brown <david.brown@hesbynett.no> - 2015-09-03 13:19 +0200
                                      Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 04:51 -0700
                                        Re: Generic function-calling code David Brown <david.brown@hesbynett.no> - 2015-09-03 14:31 +0200
                                          Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 05:57 -0700
                                      Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 04:56 -0700
                                        Re: Generic function-calling code David Brown <david.brown@hesbynett.no> - 2015-09-03 14:53 +0200
                                          Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 06:08 -0700
                                            Re: Generic function-calling code David Brown <david.brown@hesbynett.no> - 2015-09-03 15:18 +0200
                                              Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 06:30 -0700
                                                Re: Generic function-calling code Martin Shobe <martin.shobe@yahoo.com> - 2015-09-03 10:09 -0500
                                                  Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 08:59 -0700
                                                Re: Generic function-calling code Philip Lantz <prl@canterey.us> - 2015-09-03 08:37 -0700
                                        Re: Generic function-calling code Philip Lantz <prl@canterey.us> - 2015-09-03 08:31 -0700
                                          Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 09:07 -0700
                                            Re: Generic function-calling code David Brown <david.brown@hesbynett.no> - 2015-09-03 20:42 +0200
                                              Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 11:49 -0700
                                    Re: Generic function-calling code Philip Lantz <prl@canterey.us> - 2015-09-03 08:25 -0700
                                      Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-09-03 16:46 +0100
                                      Re: Generic function-calling code "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 09:02 -0700
                                Re: Generic function-calling code glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-09-04 04:04 +0000
                          Re: Generic function-calling code Philip Lantz <prl@canterey.us> - 2015-09-03 00:36 -0700
                            Re: Generic function-calling code Bartc <bc@freeuk.com> - 2015-09-03 16:29 +0100
                              Re: Generic function-calling code Philip Lantz <prl@canterey.us> - 2015-09-03 08:45 -0700
                              Re: Generic function-calling code David Brown <david.brown@hesbynett.no> - 2015-09-03 22:33 +0200

Page 1 of 8  [1] 2 3 4 5 6 7 8  Next page →


#66125 — Generic function-calling code

FromBartc <bc@freeuk.com>
Date2015-07-21 21:21 +0100
SubjectGeneric function-calling code
Message-ID<mom9hn$fm3$1@dont-email.me>
One problem I posted about a couple of years ago was along these lines:

* You have a pointer to a function (which happens to be to an external, 
runtime-loaded dynamic library function, but I'm not sure it matters)

* You know, at runtime, the number of parameters N, and the types of 
each parameter, and the return type (encoded as integers according to 
some scheme).

* There is an array of arguments to be passed (consider each element to 
be a union of possible integer, float and pointer types).

The problem I had then was you couldn't write, in C, a function call 
with a variable number of arguments (to a function taking a fixed 
number). It is only possible to do this:

    retval = ((<cast>)fnptr) (params[0], params[1], params[2]);

but that covers the N==3 case only. If NMAX is 15, say, then there are 
16 lines like the above to write, when the return type is int. Plus 
another 16 for float (because usually the value is in a different kind 
of register), so 32 in total.

Then there might be C and Windows call conventions, so we're looking at 
64 combinations (with 64 kinds of cast to apply to fnptr).

Apparently there is is no other solution in C, so I went along with that 
(not all combinations are populated; they are only added as needed).

------------------------------------------------------------------

But now there is another twist, which is due to the calling conventions 
used with x64: the first 4 to 6 parameters are passed in general purpose 
registers for integers, and XMM registers for floats/doubles.

That means I can't use my generic params[] list as above; I have to 
specify whether each argument is a integer or float. That means that for 
N parameters, there could be 2**N different combinations of integer or 
float arguments.

Obviously writing tens of thousands of lines is no longer viable (it 
won't be that many as functions that take floats don't usually have lots 
of parameters, but it will be enough.)

I just wondered if anyone had any ideas ....

-- 
Bartc

[toc] | [next] | [standalone]


#66126

Fromjacobnavia <jacob@jacob.remcomp.fr>
Date2015-07-21 23:04 +0200
Message-ID<momc30$p1p$1@dont-email.me>
In reply to#66125
Le 21/07/2015 22:21, Bartc a écrit :
> One problem I posted about a couple of years ago was along these lines:
>
> * You have a pointer to a function (which happens to be to an external,
> runtime-loaded dynamic library function, but I'm not sure it matters)
>
> * You know, at runtime, the number of parameters N, and the types of
> each parameter, and the return type (encoded as integers according to
> some scheme).
>
> * There is an array of arguments to be passed (consider each element to
> be a union of possible integer, float and pointer types).
>
> The problem I had then was you couldn't write, in C, a function call
> with a variable number of arguments (to a function taking a fixed
> number). It is only possible to do this:
>
>     retval = ((<cast>)fnptr) (params[0], params[1], params[2]);
>
> but that covers the N==3 case only. If NMAX is 15, say, then there are
> 16 lines like the above to write, when the return type is int. Plus
> another 16 for float (because usually the value is in a different kind
> of register), so 32 in total.
>
> Then there might be C and Windows call conventions, so we're looking at
> 64 combinations (with 64 kinds of cast to apply to fnptr).
>
> Apparently there is is no other solution in C, so I went along with that
> (not all combinations are populated; they are only added as needed).
>
> ------------------------------------------------------------------
>
> But now there is another twist, which is due to the calling conventions
> used with x64: the first 4 to 6 parameters are passed in general purpose
> registers for integers, and XMM registers for floats/doubles.
>
> That means I can't use my generic params[] list as above; I have to
> specify whether each argument is a integer or float. That means that for
> N parameters, there could be 2**N different combinations of integer or
> float arguments.
>
> Obviously writing tens of thousands of lines is no longer viable (it
> won't be that many as functions that take floats don't usually have lots
> of parameters, but it will be enough.)
>
> I just wondered if anyone had any ideas ....
>

void *fn();

This prototype specifies that fn is a function that receives an 
underterminate number of arguments. You can pass to your function as 
many args as you want.

/tmp $ cat tfn.c
void *fn()
{ return 0; }

int main(void)
{
	fn(1,67.87,9756.9L,"a");
	fn(2,"foo",678);
}
/tmp $ gcc -std=c99 tfn.c
/tmp $

But maybe you know this and I haven't understood what you want to do

[toc] | [prev] | [next] | [standalone]


#66127

Fromluser droog <luser.droog@gmail.com>
Date2015-07-21 14:45 -0700
Message-ID<351d1a19-292c-48c2-8b09-d9ab7f45e414@googlegroups.com>
In reply to#66126
On Tuesday, July 21, 2015 at 4:05:12 PM UTC-5, jacobnavia wrote:


> 
> void *fn();
> 
> This prototype specifies that fn is a function that receives an 
> underterminate number of arguments. You can pass to your function as 
> many args as you want.
> 
> /tmp $ cat tfn.c
> void *fn()
> { return 0; }
> 
> int main(void)
> {
> 	fn(1,67.87,9756.9L,"a");
> 	fn(2,"foo",678);
> }
> /tmp $ gcc -std=c99 tfn.c
> /tmp $
> 
> But maybe you know this and I haven't understood what you want to do

He's doing this in the context of an interpreter, I think.
So it needs to be a function that can receive the fn pointer 
and a struct or array of arguments and do an Apply, calling
any function (with appropriate signature) upon a stored set
of actual parameters.

My only thought is tricksy macros. But I haven't imagined yet how to
organize them.

[toc] | [prev] | [next] | [standalone]


#66131

FromBartc <bc@freeuk.com>
Date2015-07-22 00:56 +0100
Message-ID<momm4p$t3l$1@dont-email.me>
In reply to#66127
On 21/07/2015 22:45, luser droog wrote:
> On Tuesday, July 21, 2015 at 4:05:12 PM UTC-5, jacobnavia wrote:
>
>
>>
>> void *fn();
>>
>> This prototype specifies that fn is a function that receives an
>> underterminate number of arguments. You can pass to your function as
>> many args as you want.

(That won't solve this but can be useful in other situations, *if* I can 
pass 2 arguments in one place and 6 in another. But it's not clear how 
it determines the parameter types in each case.)

>> /tmp $ cat tfn.c
>> void *fn()
>> { return 0; }
>>
>> int main(void)
>> {
>> 	fn(1,67.87,9756.9L,"a");
>> 	fn(2,"foo",678);
>> }
>> /tmp $ gcc -std=c99 tfn.c
>> /tmp $
>>
>> But maybe you know this and I haven't understood what you want to do
>
> He's doing this in the context of an interpreter, I think.
> So it needs to be a function that can receive the fn pointer
> and a struct or array of arguments and do an Apply, calling
> any function (with appropriate signature) upon a stored set
> of actual parameters.

Yes, that's pretty much it. With x64's call conventions, I can't just 
treat every argument (int, float, pointer) as a 64-bit anonymous block 
of data, as 64-bit floats need to be passed differently.

(However the problem isn't pressing: for x64, I use my own compiler, and 
that can resort to some asm if needed (but it's not easy). For x86 where 
I use C, the problem doesn't occur. But it would be useful to have a 
high-level approach, that I can also use with C for x64 when I try that.)

> My only thought is tricksy macros. But I haven't imagined yet how to
> organize them.

Ah yes. But if you're planning some that will generate 2**16 different 
call sequences, then I'll have to politely decline!

-- 
Bartc

[toc] | [prev] | [next] | [standalone]


#66143

FromBGB <cr88192@hotmail.com>
Date2015-07-22 00:25 -0500
Message-ID<mon9oa$f62$1@news.albasani.net>
In reply to#66131
On 7/21/2015 6:56 PM, Bartc wrote:
> On 21/07/2015 22:45, luser droog wrote:
>> On Tuesday, July 21, 2015 at 4:05:12 PM UTC-5, jacobnavia wrote:
>>


>
>> My only thought is tricksy macros. But I haven't imagined yet how to
>> organize them.
>
> Ah yes. But if you're planning some that will generate 2**16 different
> call sequences, then I'll have to politely decline!
>

any specific reason beyond this?...

the compiler will generally handle it (if you avoid going "too" 
extreme), nevermind of the output is a bit large (in most cases here 
though, what is a few extra MB?...).


short of machine-specific assembler code or similar, there aren't really 
a whole lot of other options, and something like this could be saved 
mostly as a fallback case (with relevant targets using specialized ASM 
sequences instead).

[toc] | [prev] | [next] | [standalone]


#66145

From"Rick C. Hodgin" <rick.c.hodgin@gmail.com>
Date2015-07-22 02:37 -0700
Message-ID<6dd18c80-54f0-48a9-bd0d-ab6519b03694@googlegroups.com>
In reply to#66143
Bart,

Why are you passing parameters at all? Pass
pointers to structs you've built which convey
all of that information which you've manually
built from what you know at runtime.  Why
does it have to go through parameters?

If it's a call into C from another language then
use three functions:

    int mydllfunction_getHandle(void);
    int mydllfunction_accumulateParam(int handle, int type, void* value);
    int mydllfunction_dispatch(int handle);

You could use an optional 4th to release the
handle, but given the nature, the dispatch()
function could do it.

Best regards,
Rick C. Hodgin

[toc] | [prev] | [next] | [standalone]


#66149

FromBartc <bc@freeuk.com>
Date2015-07-22 11:50 +0100
Message-ID<monse0$ctq$1@dont-email.me>
In reply to#66145
On 22/07/2015 10:37, Rick C. Hodgin wrote:
> Bart,
>
> Why are you passing parameters at all? Pass
> pointers to structs you've built which convey
> all of that information which you've manually
> built from what you know at runtime.  Why
> does it have to go through parameters?
>
> If it's a call into C from another language then
> use three functions:
>
>      int mydllfunction_getHandle(void);
>      int mydllfunction_accumulateParam(int handle, int type, void* value);
>      int mydllfunction_dispatch(int handle);
>
> You could use an optional 4th to release the
> handle, but given the nature, the dispatch()
> function could do it.

It's difficult to put across the problem although luser seemed to grasp 
it instantly.

But suppose you create an interpreter for a language which can access 
external DLL functions. You write the interpreter in C, and build it in 
July 2014.

A year later in July 2015, someone writes a program which wants to 
access a DLL function with a dozen assorted parameters (eg. 
'CreateWindowEx' from library 'user32.dll').

Now, the interpreter can't anticipate which of tens of thousands of 
possible functions in hundreds of different libraries could be called; 
it has to work with any possibility.

So how will it work? It can get the function address, it knows the 
number and types of the parameters, it knows the return value, and it 
knows the arguments the user's program will supply. But the call must 
somehow be accomplished inside the interpreter.

It can be done by dropping into assembly or using all sorts of dodgy 
techniques (generating and compiling C at runtime for example). But I'm 
interested in a solution in normal code.

(I'm looking at Kenny's link to FFCALL, which looks as though it 
understands the issues involved, but it looks very complicated, and it 
might not be fully updated for x64 (possibly it has come across the same 
problem I have!).)

-- 
Bartc

[toc] | [prev] | [next] | [standalone]


#66150

From"Rick C. Hodgin" <rick.c.hodgin@gmail.com>
Date2015-07-22 04:29 -0700
Message-ID<10da63b0-aaf5-4f81-9408-c256ded31ee6@googlegroups.com>
In reply to#66149
Okay, I think you're making this much harder than it needs to be. Since you know the number of parameters that must be passed to each function, you only need to prepare that many functions, and pass all parameters as void pointers, up to the count, and then even though you dispatch them as void pointers, the receiving function will see them as they are, an integer will be an integer a float will be a float, and so forth.

I find it difficult to believe that the DLL on x64 would specify a particular passed parameter order through registers, but would sooner conclude that such a protocol must be a link-time optimisation provided for by the compiler to a static-linked library. But even if it's not, you only have to deal with the first few parameters and the rest you would pass as void pointers.

Best regards,
Rick C. Hodgin

[toc] | [prev] | [next] | [standalone]


#66151

FromBartc <bc@freeuk.com>
Date2015-07-22 13:04 +0100
Message-ID<moo0q5$s0r$1@dont-email.me>
In reply to#66150
On 22/07/2015 12:29, Rick C. Hodgin wrote:
> Okay, I think you're making this much harder than it needs to be. Since you know the number of parameters that must be passed to each function, you only need to prepare that many functions, and pass all parameters as void pointers, up to the count, and then even though you dispatch them as void pointers, the receiving function will see them as they are, an integer will be an integer a float will be a float, and so forth.

 > I find it difficult to believe that the DLL on x64 would specify a 
 >particular passed parameter order through registers,

On x64 on Windows, floating point parameters are passed in XMM0 to XMM3 
if amongst the first 4 parameters, instead of GPRs. (With C's variadic 
functions, they have to be passed in both.). Linux is similar.

 >but would sooner
 >conclude that such a protocol must be a link-time optimisation 
 >provided for by the compiler to a static-linked library. But even if 
 >it's not, you only have to deal with the first few parameters and the 
 >rest you would pass as void pointers.

That is a very good point! Only the first 4 parameters are troublesome, 
the rest are passed on the stack, so ints/doubles can be treated the same.

So only 16 combinations when there are 4 or more parameters. It might 
just about be viable again to support all the combinations. (But then, 
Linux I think passes the first 6 arguments in registers.)

Another idea might be to somehow make C think the function call is 
variadic, which could force each of the first few arguments to be passed 
both ways. But I don't know enough about how variadic functions work at 
the other end; I'm not sure is variadic-ness can just be imposed on any 
normal function.

-- 
Bartc

[toc] | [prev] | [next] | [standalone]


#66153

From"Rick C. Hodgin" <rick.c.hodgin@gmail.com>
Date2015-07-22 05:44 -0700
Message-ID<195c4e38-54a5-4d7e-835f-a8cfc73a2bb9@googlegroups.com>
In reply to#66151
On Wednesday, July 22, 2015 at 8:05:00 AM UTC-4, Bart wrote:
> On 22/07/2015 12:29, Rick C. Hodgin wrote:
> > Okay, I think you're making this much harder than it needs to be. Since you know the number of parameters that must be passed to each function, you only need to prepare that many functions, and pass all parameters as void pointers, up to the count, and then even though you dispatch them as void pointers, the receiving function will see them as they are, an integer will be an integer a float will be a float, and so forth.
> 
>  > I find it difficult to believe that the DLL on x64 would specify a 
>  >particular passed parameter order through registers,
> 
> On x64 on Windows, floating point parameters are passed in XMM0 to XMM3 
> if amongst the first 4 parameters, instead of GPRs. (With C's variadic 
> functions, they have to be passed in both.). Linux is similar.
> 
>  >but would sooner
>  >conclude that such a protocol must be a link-time optimisation 
>  >provided for by the compiler to a static-linked library. But even if 
>  >it's not, you only have to deal with the first few parameters and the 
>  >rest you would pass as void pointers.
> 
> That is a very good point! Only the first 4 parameters are troublesome, 
> the rest are passed on the stack, so ints/doubles can be treated the same.
> 
> So only 16 combinations when there are 4 or more parameters. It might 
> just about be viable again to support all the combinations. (But then, 
> Linux I think passes the first 6 arguments in registers.)
> 
> Another idea might be to somehow make C think the function call is 
> variadic, which could force each of the first few arguments to be passed 
> both ways. But I don't know enough about how variadic functions work at 
> the other end; I'm not sure is variadic-ness can just be imposed on any 
> normal function.

Since you're doing this only on Windows, I would write one function
which uses assembly to push data onto the stack in the manner you
expect, and then dispatch the function call.

I would be willing to write this for you (if you need) as I do need
something similar for Visual FreePro, Jr.'s arbitrary runtime support
of declared DLL functions using this sort of XBASE syntax:

    DECLARE INTEGER SetForegroundWindow IN WIN32API INTEGER nHwnd

Best regards,
Rick C. Hodgin

[toc] | [prev] | [next] | [standalone]


#66154 — AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code)

Fromgazelle@shell.xmission.com (Kenny McCormack)
Date2015-07-22 12:50 +0000
SubjectAVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code)
Message-ID<moo3j6$57n$1@news.xmission.com>
In reply to#66149
In article <monse0$ctq$1@dont-email.me>, Bartc  <bc@freeuk.com> wrote:
...
>(I'm looking at Kenny's link to FFCALL, which looks as though it 
>understands the issues involved, but it looks very complicated, and it 
>might not be fully updated for x64 (possibly it has come across the same 
>problem I have!).)

Everyone else here is trying to stay on topic - that is, to try to coerce
the problem into one that can be solved in Standard C - and/or try to
convince you that you don't really want to do what you say you want to do.
I seem to be the only one who understands what you're doing - probably
because I've been doing it myself for years.

Yes, avcall is the solution.  It works very well and compiles on most
normal platforms.  I've used it on Linux-x86, Linux-x64, ARM-32, Solaris
Sparc-32, and Windows 32.  I've never had occasion to try it on Win64, so
it is possible it hasn't been ported there yet.  I'd be surprised if that
is the case, but I suppose it is possible.

Note also: I have it working on OSX-32, but *not* OSX-64.  There does seem
to be a problem getting it working on OSX-64 (on x64).  So, there could be
a problem with it on x64.  But Linux-x64 does work (as noted above).

Admittedly, one problem with the FFCALL package is that it's not really
being maintained anymore - it is kind of abandon-ware - but it does work,
and there are still people working on it (just not the original
developers).  I had a bit of a hassle getting it to work on ARM
(specifically, on the Raspberry Pi and another ARM based SBC I own), but I
did eventually find the right goo-goo from the Debian folks who, as I say,
*are* still working on it.

-- 
People who say they'll vote for someone else because Obama couldn't solve
all of Bush's messes are like people complaining that he couldn't cure cancer,
so they'll go and vote for cancer.

[toc] | [prev] | [next] | [standalone]


#66155 — Re: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code)

From"Rick C. Hodgin" <rick.c.hodgin@gmail.com>
Date2015-07-22 06:07 -0700
SubjectRe: AVCALL (from the 'ffcall' package) really is the answer! (Was: Generic function-calling code)
Message-ID<4f5f811a-2233-402e-9354-1d0c2f3918e8@googlegroups.com>
In reply to#66154
On Wednesday, July 22, 2015 at 8:50:55 AM UTC-4, Kenny McCormack wrote:
> -- 
> People who say they'll vote for someone else because Obama couldn't solve
> all of Bush's messes are like people complaining that he couldn't cure cancer,
> so they'll go and vote for cancer.

People who, by the year 2015, don't yet realize that it doesn't matter
who's in office (Democrat or Republican), that the policies are actually
being installed by elite global banking interests ... well, they're just
not thinking the matter through (or observing history, or reading their
Bible -- if you turn to the end of the book, Revelation tells us what's
going to happen in the years to come.  Horrible times, the worst there's
ever been on Earth for people, including the Holocaust, including the
Dark Ages, including the plagues and natural disasters.  There's an enemy
of God at work against us in this world, and Jesus is way out of that
enemy's traps, lies, and deceits).

Best regards,
Rick C. Hodgin

[toc] | [prev] | [next] | [standalone]


#66156 — Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)

Fromgazelle@shell.xmission.com (Kenny McCormack)
Date2015-07-22 13:30 +0000
SubjectLet's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)
Message-ID<moo5st$77e$1@news.xmission.com>
In reply to#66155
In article <4f5f811a-2233-402e-9354-1d0c2f3918e8@googlegroups.com>,
Rick C. Hodgin <rick.c.hodgin@gmail.com> wrote:
>On Wednesday, July 22, 2015 at 8:50:55 AM UTC-4, Kenny McCormack wrote:
>> -- 
>> People who say they'll vote for someone else because Obama couldn't solve
>> all of Bush's messes are like people complaining that he couldn't cure cancer,
>> so they'll go and vote for cancer.
>
>People who, by the year 2015, don't yet realize that it doesn't matter

I'm not sure what's more off-topic here.  Talking about (American) politics
or your endless God-drivel.

(Yes, I claim privilege for sigs.  Most people's sigs are at least
partially off-topic in whatever newsgroup they appear - and of course,
almost all sigs are OT in CLC [since very few of them concern topics
discussed in the C standards documents])

-- 
I've been watching cat videos on YouTube.  More content and closer to
the truth than anything on Fox.

[toc] | [prev] | [next] | [standalone]


#66158 — Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)

From"Rick C. Hodgin" <rick.c.hodgin@gmail.com>
Date2015-07-22 07:42 -0700
SubjectRe: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)
Message-ID<2013e624-9dab-4f1e-9b66-ef3ad3ba2a27@googlegroups.com>
In reply to#66156
On Wednesday, July 22, 2015 at 9:30:14 AM UTC-4, Kenny McCormack wrote:
> Rick C. Hodgin wrote:
> > [snip]
> I'm not sure what's more off-topic here.  Talking about (American)
> politics or your endless God-drivel.

Talking about politics.  Discussions about Jesus Christ are appropriate
in all places, at all times, in all situations, as "man does not live by
bread alone, but by EVERY word which proceeds from the mouth of God."

    http://biblehub.com/matthew/4-4.htm

It's time to wake up from your slumber, and seek the Lord.  He has
eternal life to give all who come to Him.  He will forgive all your
sins, and restore you to eternal life so that you will never die,
even if you die here in this world, but will continue on forever as
God made you to be:  soul, spirit, body (we are given a new body
after death, one like the angels, one which never ages, never gets
disease, hot, cold, has pain, for we are restored to the purpose God
had for us before we fell through (because of) sin).

Best regards,
Rick C. Hodgin

[toc] | [prev] | [next] | [standalone]


#66160 — Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)

FromDavid Brown <david.brown@hesbynett.no>
Date2015-07-22 17:07 +0200
SubjectRe: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)
Message-ID<moobgf$6os$1@dont-email.me>
In reply to#66158
On 22/07/15 16:42, Rick C. Hodgin wrote:
> On Wednesday, July 22, 2015 at 9:30:14 AM UTC-4, Kenny McCormack wrote:
>> Rick C. Hodgin wrote:
>>> [snip]
>> I'm not sure what's more off-topic here.  Talking about (American)
>> politics or your endless God-drivel.
> 
> Talking about politics.  Discussions about Jesus Christ are appropriate
> in all places, at all times, in all situations, as "man does not live by
> bread alone, but by EVERY word which proceeds from the mouth of God."
> 

My understanding was that the Bible encouraged people to show their
faith through their deeds, not just words.  You believe you can do that
through your divinely inspired software development.  That's fine.  So
let's stick to software development here, and do good deeds in that area.

If you can't avoid making an occasional religious post, then please do
so in separate threads with clear titles.  Then the people that don't
like such threads can easily ignore them, and those that want to discuss
religion can easily read and comment on them.  There will obviously be
people here who don't want to see such off-topic threads at all - and
they have a valid point.  But I think even they would be less unhappy
with marked off-topic threads than off-topic branches in topical threads.

This mixing of disparate topics in a thread reminds me of a story of my
old grandfather going camping.  He liked a good three course meal when
camping - soup, mince and potatoes, and custard for pudding.  To save
dishes, he would mix them altogether in the same pot.  While the members
of this group may disagree about the culinary delights of mince and of
custard, I believe we all prefer them severed separately.

(I know that you believe that your religious beliefs should permeate all
aspects of your life, and I understand why you feel that way.  But if
you really want to change anyone else, then you must approach them on
/their/ terms, not your terms.)

Regarding signatures, feel free to be off-topic in your signatures, as
long as they are properly delimited and limited to perhaps 4 lines.
This gives you an opportunity to state your ideas clearly and concisely
without annoying people or detracting from the technical content of the
thread.  Equally, however, you should not reply to or comment on
off-topic signatures within a thread.  If people were to comment on all
of Kenny's signatures, we would be here all day and never get the chance
to discuss C.

[toc] | [prev] | [next] | [standalone]


#66163 — Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)

From"Rick C. Hodgin" <rick.c.hodgin@gmail.com>
Date2015-07-22 08:16 -0700
SubjectRe: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)
Message-ID<84dc8278-570e-43c2-87e1-8328dcb06182@googlegroups.com>
In reply to#66160
On Wednesday, July 22, 2015 at 11:07:31 AM UTC-4, David Brown wrote:
> On 22/07/15 16:42, Rick C. Hodgin wrote:
> > On Wednesday, July 22, 2015 at 9:30:14 AM UTC-4, Kenny McCormack wrote:
> >> Rick C. Hodgin wrote:
> >>> [snip]
> >> I'm not sure what's more off-topic here.  Talking about (American)
> >> politics or your endless God-drivel.
> > 
> > Talking about politics.  Discussions about Jesus Christ are appropriate
> > in all places, at all times, in all situations, as "man does not live by
> > bread alone, but by EVERY word which proceeds from the mouth of God."
> > 
> 
> My understanding was that the Bible encouraged people to show their
> faith through their deeds, not just words.

Correct.  But it does also say to use words, and specifically in the
context of teaching:

    http://biblehub.com/matthew/28-19.htm
    http://biblehub.com/matthew/28-20.htm

    "19 Go ye therefore, and teach all nations, baptizing them
     in the name of the Father, and of the Son, and of the
     Holy Ghost:  20a Teaching them to observe all things
     whatsoever I have commanded you..."

    http://biblehub.com/colossians/4-6.htm
    "Let your speech always be with grace, as though seasoned
     with salt, so that you will know how you should respond
     to each person."

We (Christians) operate as born again people, changed from within
by His Holy Spirit.  The old life we had has passed away, the new
life we have has come, and He is with us always (Matthew 28:20b).
Ours is not a life of our own, but we are now His, and as we are
His He is with us, and because He is with us the things we go on
about are naturally of His interests, whereas the people who are
not His naturally go on about the enemy's interests (i.e., things
that are not of God, but of the devil).

Jesus is the way out for all people.  He is the only way out
because He is the only one who can take away your sin and restore
you to eternal life.

It would behoove you to seek Him first in your life, ahead of all
other things, for you will find some day that there is nothing
more important than coming to a saving knowledge of Jesus Christ
in your life, and the lives of those most dear to you.

Best regards,
Rick C. Hodgin

[toc] | [prev] | [next] | [standalone]


#66165 — Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)

FromKeith Thompson <kst-u@mib.org>
Date2015-07-22 08:41 -0700
SubjectRe: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)
Message-ID<ln615c2oa9.fsf@kst-u.example.com>
In reply to#66160
David Brown <david.brown@hesbynett.no> writes:
> On 22/07/15 16:42, Rick C. Hodgin wrote:
>> On Wednesday, July 22, 2015 at 9:30:14 AM UTC-4, Kenny McCormack wrote:
>>> Rick C. Hodgin wrote:
>>>> [snip]
>>> I'm not sure what's more off-topic here.  Talking about (American)
>>> politics or your endless God-drivel.
>> 
>> Talking about politics.  Discussions about Jesus Christ are appropriate
>> in all places, at all times, in all situations, as "man does not live by
>> bread alone, but by EVERY word which proceeds from the mouth of God."
>> 
>
> My understanding was that the Bible [SNIP]

David, please *please* **PLEASE** don't feed the trolls.  (If anyone
wants to debate the precise meaning of "troll", don't bother,
I've heard it before.)

Rick posts with a valid e-mail address.  If you want to debate
religion with him, you can do it by e-mail (or on a more appropriate
newsgroup, or by carrier pigeon, or not at all).

In the past, Rick has posted a private e-mail discussion here
without the other participant's permission, so be aware of that
(he later apologized).

-- 
Keith Thompson (The_Other_Keith) kst-u@mib.org  <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something.  This is something.  Therefore, we must do this."
    -- Antony Jay and Jonathan Lynn, "Yes Minister"

[toc] | [prev] | [next] | [standalone]


#66166 — Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)

FromKeith Thompson <kst-u@mib.org>
Date2015-07-22 08:47 -0700
SubjectRe: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)
Message-ID<ln1tg02nz7.fsf@kst-u.example.com>
In reply to#66165
Keith Thompson <kst-u@mib.org> writes:
> David Brown <david.brown@hesbynett.no> writes:
>> On 22/07/15 16:42, Rick C. Hodgin wrote:
[snip]
>> My understanding was that the Bible [SNIP]
>
> David, please *please* **PLEASE** don't feed the trolls.
[...]

David, just after I posted the above I read your post as carefully
as I should have before replying.  I see that you were actually
asking Rick to stop posting off-topic material here, or at least to
mark it more clearly.  My response was incorrect and inappropriate,
and I apologize.

-- 
Keith Thompson (The_Other_Keith) kst-u@mib.org  <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something.  This is something.  Therefore, we must do this."
    -- Antony Jay and Jonathan Lynn, "Yes Minister"

[toc] | [prev] | [next] | [standalone]


#66167 — Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)

From"Rick C. Hodgin" <rick.c.hodgin@gmail.com>
Date2015-07-22 08:53 -0700
SubjectRe: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)
Message-ID<702ad97e-1f64-4ca8-9243-5f310da2d518@googlegroups.com>
In reply to#66166
On Wednesday, July 22, 2015 at 11:47:49 AM UTC-4, Keith Thompson wrote:
> Keith Thompson <kst-u@mib.org> writes:
> > David Brown <david.brown@hesbynett.no> writes:
> >> On 22/07/15 16:42, Rick C. Hodgin wrote:
> [snip]
> >> My understanding was that the Bible [SNIP]
> >
> > David, please *please* **PLEASE** don't feed the trolls.
> [...]
> 
> David, just after I posted the above I read your post as carefully
> as I should have before replying.  I see that you were actually
> asking Rick to stop posting off-topic material here, or at least to
> mark it more clearly.  My response was incorrect and inappropriate,
> and I apologize.

I have prayed for you, Keith, and have done so many times.  I will
continue as the Lord brings you to my remembrance.

Best regards,
Rick C. Hodgin

[toc] | [prev] | [next] | [standalone]


#66168 — Re: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)

FromDavid Brown <david.brown@hesbynett.no>
Date2015-07-22 18:09 +0200
SubjectRe: Let's see who can be the most off-topic (Was: AVCALL ...) Generic function-calling code)
Message-ID<moof58$ntu$1@dont-email.me>
In reply to#66166
On 22/07/15 17:47, Keith Thompson wrote:
> Keith Thompson <kst-u@mib.org> writes:
>> David Brown <david.brown@hesbynett.no> writes:
>>> On 22/07/15 16:42, Rick C. Hodgin wrote:
> [snip]
>>> My understanding was that the Bible [SNIP]
>>
>> David, please *please* **PLEASE** don't feed the trolls.
> [...]
> 
> David, just after I posted the above I read your post as carefully
> as I should have before replying.  I see that you were actually
> asking Rick to stop posting off-topic material here, or at least to
> mark it more clearly.  My response was incorrect and inappropriate,
> and I apologize.
> 

Given how I have sometimes replied to such posts in the past, your first
assumption was perfectly justified.  I am just trying to find a way to
be able to keep having technical discussions that include everyone
(including Rick, people who want to reply to his off-topic posts, people
who want nothing but C in this groups, and everyone in between).

But I am off on holiday for a week or so, so any further posts on the
topic will be an SEP :-)


("Somebody Else's Problem", for those not familiar with Douglas Adams.)

[toc] | [prev] | [next] | [standalone]


Page 1 of 8  [1] 2 3 4 5 6 7 8  Next page →

Back to top | Article view | comp.lang.c


csiph-web