Debian Bug report logs - #235824
cproto: inline processing is recursive

version graph

Package: cproto; Maintainer for cproto is Kenneth J. Pronovici <pronovic@debian.org>; Source for cproto is src:cproto.

Reported by: Patricio Rojo <pato@astro.cornell.edu>

Date: Tue, 2 Mar 2004 17:33:01 UTC

Severity: wishlist

Tags: sid, upstream

Found in version 4.7a-2

Fixed in version cproto/4.7c-1

Done: pronovic@debian.org (Kenneth J. Pronovici)

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, pronovic@debian.org (Kenneth J. Pronovici):
Bug#235824; Package cproto. Full text and rfc822 format available.

Acknowledgement sent to Patricio Rojo <pato@astro.cornell.edu>:
New Bug report received and forwarded. Copy sent to pronovic@debian.org (Kenneth J. Pronovici). Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Patricio Rojo <pato@astro.cornell.edu>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: cproto: inline processing is recursive
Date: Tue, 02 Mar 2004 12:19:03 -0500
Package: cproto
Version: 4.7a-2
Severity: normal
Tags: sid

Thank you for adding inline fuctionality!

However, it seems to process recursively.
For example, if you 'cproto -i' the following
--------------------
#include <sys/stat.h>
 
int main()
{
}
--------------------

you get
--------------------
/* test.c */
__inline__ int stat(__const char *__path, struct stat *__statbuf);
__inline__ int lstat(__const char *__path, struct stat *__statbuf);
__inline__ int fstat(int __fd, struct stat *__statbuf);
__inline__ int mknod(__const char *__path, __mode_t __mode, __dev_t __dev);
int main(void);
--------------------

Thank you very much!,

              Patricio


-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (990, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.4.24-pcstm1-athlon
Locale: LANG=en_US, LC_CTYPE=en_US

Versions of packages cproto depends on:
ii  libc6                       2.3.2.ds1-11 GNU C Library: Shared libraries an

-- no debconf information



Information forwarded to debian-bugs-dist@lists.debian.org, pronovic@debian.org (Kenneth J. Pronovici):
Bug#235824; Package cproto. Full text and rfc822 format available.

Acknowledgement sent to Kenneth Pronovici <pronovic@debian.org>:
Extra info received and forwarded to list. Copy sent to pronovic@debian.org (Kenneth J. Pronovici). Full text and rfc822 format available.

Message #10 received at 235824@bugs.debian.org (full text, mbox):

From: Kenneth Pronovici <pronovic@debian.org>
To: Patricio Rojo <pato@astro.cornell.edu>, 235824@bugs.debian.org
Subject: Re: Bug#235824: cproto: inline processing is recursive
Date: Tue, 2 Mar 2004 11:53:04 -0600
[Message part 1 (text/plain, inline)]
> Thank you for adding inline fuctionality!
> 
> However, it seems to process recursively.

Wow.  That's strange.  I sure didn't see that in my testing.  I'll dig
some more.

KEN
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, pronovic@debian.org (Kenneth J. Pronovici):
Bug#235824; Package cproto. Full text and rfc822 format available.

Acknowledgement sent to Kenneth Pronovici <pronovic@debian.org>:
Extra info received and forwarded to list. Copy sent to pronovic@debian.org (Kenneth J. Pronovici). Full text and rfc822 format available.

Message #15 received at 235824@bugs.debian.org (full text, mbox):

From: Kenneth Pronovici <pronovic@debian.org>
To: Patricio Rojo <pato@astro.cornell.edu>, 235824@bugs.debian.org
Subject: Re: Bug#235824: cproto: inline processing is recursive
Date: Tue, 2 Mar 2004 13:12:38 -0600
[Message part 1 (text/plain, inline)]
On Tue, Mar 02, 2004 at 11:53:04AM -0600, Kenneth Pronovici wrote:
> > Thank you for adding inline fuctionality!
> > 
> > However, it seems to process recursively.
> 
> Wow.  That's strange.  I sure didn't see that in my testing.  I'll dig
> some more.

It turns out that from a compiler perspective, these functions are
defined in your code.  It just happens they got there from a header file
that you included (in this case, <sys/stat.h>).

I don't know that there's going to be a good way to both catch "your"
inline functions and ignore inline functions that might be defined in
header files that you don't control.  The cproto parser doesn't (can't)
know the difference.

KEN

-- 
Kenneth J. Pronovici <pronovic@debian.org>
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, pronovic@debian.org (Kenneth J. Pronovici):
Bug#235824; Package cproto. Full text and rfc822 format available.

Acknowledgement sent to Patricio Rojo <pato@astro.cornell.edu>:
Extra info received and forwarded to list. Copy sent to pronovic@debian.org (Kenneth J. Pronovici). Full text and rfc822 format available.

Message #20 received at 235824@bugs.debian.org (full text, mbox):

From: Patricio Rojo <pato@astro.cornell.edu>
To: Kenneth Pronovici <pronovic@debian.org>
Cc: 235824@bugs.debian.org
Subject: Re: Bug#235824: cproto: inline processing is recursive
Date: Wed, 03 Mar 2004 12:46:25 -0500
Hmmm... 
  I look at the source, but it is beyond my capabilities to try to make
a patch:(...
  Isn't it kind of weird to define functions in the headers, anyways?
  In any case, it seems that this extra output shouldn't do any harm in
the compilation.

    Thanks!

                    Patricio


On Tue, 2004-03-02 at 14:12, Kenneth Pronovici wrote:
> On Tue, Mar 02, 2004 at 11:53:04AM -0600, Kenneth Pronovici wrote:
> > > Thank you for adding inline fuctionality!
> > > 
> > > However, it seems to process recursively.
> > 
> > Wow.  That's strange.  I sure didn't see that in my testing.  I'll dig
> > some more.
> 
> It turns out that from a compiler perspective, these functions are
> defined in your code.  It just happens they got there from a header file
> that you included (in this case, <sys/stat.h>).
> 
> I don't know that there's going to be a good way to both catch "your"
> inline functions and ignore inline functions that might be defined in
> header files that you don't control.  The cproto parser doesn't (can't)
> know the difference.
> 
> KEN
-- 
----------------------------------------------------------------
     . .         /.
    .       *   /`'\  .                          Patricio Rojo
       .       /    ./ \..         516 Space Sciences Building
            ../   .'      \.                Cornell University
         ../    /    ../    \                 Ithaca, NY 14853
       ./     ./   ./        \                   (607)255-6438
     ./     ./            \   \.        pato@astro.cornell.edu
----------------------------------------------------------------
 
 http://www.gnu.org/philosophy/no-word-attachments.html




Information forwarded to debian-bugs-dist@lists.debian.org, pronovic@debian.org (Kenneth J. Pronovici):
Bug#235824; Package cproto. Full text and rfc822 format available.

Acknowledgement sent to Kenneth Pronovici <pronovic@debian.org>:
Extra info received and forwarded to list. Copy sent to pronovic@debian.org (Kenneth J. Pronovici). Full text and rfc822 format available.

Message #25 received at 235824@bugs.debian.org (full text, mbox):

From: Kenneth Pronovici <pronovic@debian.org>
To: Patricio Rojo <pato@astro.cornell.edu>
Cc: 235824@bugs.debian.org
Subject: Re: Bug#235824: cproto: inline processing is recursive
Date: Sun, 7 Mar 2004 23:44:35 -0600
[Message part 1 (text/plain, inline)]
On Wed, Mar 03, 2004 at 12:46:25PM -0500, Patricio Rojo wrote:
>   I look at the source, but it is beyond my capabilities to try to make
> a patch:(...

Unfortunately, it's beyond me right now, as well.  The upstream
maintainer says that there is a way to do it, but it will require much
larger changes that I made (my patch was less than 50 lines of changes).

>   Isn't it kind of weird to define functions in the headers, anyways?

Yes, I think it is.  Unfortunately, it seems to be rather common in
system header files (just grep for 'inline' in /usr/include sometime).

>   In any case, it seems that this extra output shouldn't do any harm in
> the compilation.

No, I suppose not.  

The big question: is the -i option, as written, useful to you?  Will it
be useful to anyone else?  I want to decide whether to roll back all of
my changes or keep my changes in.  

Let me know what you think.

[Note that have tagged this bug 'upstream', and I've changed it from
normal priority to wishlist priority.]

KEN

-- 
Kenneth J. Pronovici <pronovic@debian.org>
[Message part 2 (application/pgp-signature, inline)]

Severity set to `wishlist'. Request was from Kenneth Pronovici <pronovic@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Tags added: upstream Request was from Kenneth Pronovici <pronovic@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, pronovic@debian.org (Kenneth J. Pronovici):
Bug#235824; Package cproto. Full text and rfc822 format available.

Acknowledgement sent to Patricio Rojo <pato@astro.cornell.edu>:
Extra info received and forwarded to list. Copy sent to pronovic@debian.org (Kenneth J. Pronovici). Full text and rfc822 format available.

Message #34 received at 235824@bugs.debian.org (full text, mbox):

From: Patricio Rojo <pato@astro.cornell.edu>
To: Kenneth Pronovici <pronovic@debian.org>
Cc: 235824@bugs.debian.org
Subject: Re: Bug#235824: cproto: inline processing is recursive
Date: Mon, 08 Mar 2004 13:16:16 -0500
Hi Kenneth,

   Well, for me the added option is very useful. I do scientific
programming, so I'm very interested in getting the best possible speed.
As a result, I've been using quite a lot the inline keyword.
   I don't know how much is that keyword used elsewhere, but I think
that having cproto to take care of that is very nice... Adding the
inline functions declarations manually in the headers lead to several
time consuming errors. Specially in the beginning of a project, when the
number (or type) of the parameters of such functions are being
constantly changed.
   So, I think that, for now, that extra output might harm the elegance
of the code a bit, but it gain in usefulness is bigger.

    Hoping that you decide to keep your changes:), thanks a lot...

                   Pato


On Mon, 2004-03-08 at 00:44, Kenneth Pronovici wrote:
> On Wed, Mar 03, 2004 at 12:46:25PM -0500, Patricio Rojo wrote:
> >   I look at the source, but it is beyond my capabilities to try to make
> > a patch:(...
> 
> Unfortunately, it's beyond me right now, as well.  The upstream
> maintainer says that there is a way to do it, but it will require much
> larger changes that I made (my patch was less than 50 lines of changes).
> 
> >   Isn't it kind of weird to define functions in the headers, anyways?
> 
> Yes, I think it is.  Unfortunately, it seems to be rather common in
> system header files (just grep for 'inline' in /usr/include sometime).
> 
> >   In any case, it seems that this extra output shouldn't do any harm in
> > the compilation.
> 
> No, I suppose not.  
> 
> The big question: is the -i option, as written, useful to you?  Will it
> be useful to anyone else?  I want to decide whether to roll back all of
> my changes or keep my changes in.  
> 
> Let me know what you think.
> 
> [Note that have tagged this bug 'upstream', and I've changed it from
> normal priority to wishlist priority.]
> 
> KEN
-- 
----------------------------------------------------------------
     . .         /.
    .       *   /`'\  .                          Patricio Rojo
       .       /    ./ \..         516 Space Sciences Building
            ../   .'      \.                Cornell University
         ../    /    ../    \                 Ithaca, NY 14853
       ./     ./   ./        \                   (607)255-6438
     ./     ./            \   \.        pato@astro.cornell.edu
----------------------------------------------------------------
 
 http://www.gnu.org/philosophy/no-word-attachments.html




Information forwarded to debian-bugs-dist@lists.debian.org, pronovic@debian.org (Kenneth J. Pronovici):
Bug#235824; Package cproto. Full text and rfc822 format available.

Acknowledgement sent to Kenneth Pronovici <pronovic@debian.org>:
Extra info received and forwarded to list. Copy sent to pronovic@debian.org (Kenneth J. Pronovici). Full text and rfc822 format available.

Message #39 received at 235824@bugs.debian.org (full text, mbox):

From: Kenneth Pronovici <pronovic@debian.org>
To: Patricio Rojo <pato@astro.cornell.edu>
Cc: 235824@bugs.debian.org
Subject: Re: Bug#235824: cproto: inline processing is recursive
Date: Mon, 8 Mar 2004 12:28:55 -0600
[Message part 1 (text/plain, inline)]
>    Well, for me the added option is very useful. I do scientific
> programming, so I'm very interested in getting the best possible speed.
> As a result, I've been using quite a lot the inline keyword.
>    I don't know how much is that keyword used elsewhere, but I think
> that having cproto to take care of that is very nice... Adding the
> inline functions declarations manually in the headers lead to several
> time consuming errors. Specially in the beginning of a project, when the
> number (or type) of the parameters of such functions are being
> constantly changed.
>    So, I think that, for now, that extra output might harm the elegance
> of the code a bit, but it gain in usefulness is bigger.
> 
>     Hoping that you decide to keep your changes:), thanks a lot...

Ok - I will keep my changes in, and I'll keep this bug open until we can
come up with a better solution.  

Thanks,

KEN
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, pronovic@debian.org (Kenneth J. Pronovici):
Bug#235824; Package cproto. Full text and rfc822 format available.

Acknowledgement sent to Kenneth Pronovici <pronovic@debian.org>:
Extra info received and forwarded to list. Copy sent to pronovic@debian.org (Kenneth J. Pronovici). Full text and rfc822 format available.

Message #44 received at 235824@bugs.debian.org (full text, mbox):

From: Kenneth Pronovici <pronovic@debian.org>
To: 235824@bugs.debian.org
Cc: Patricio Rojo <pato@astro.cornell.edu>
Subject: Update on bug
Date: Sat, 20 Mar 2004 11:28:17 -0600
[Message part 1 (text/plain, inline)]
There is a new upstream version which contains a partial fix to this
problem.  It allows a -X option to limit the "depth" of the search, so
specifying '-X 0' gets you only definitions from your files.

However, this new logic also results in some extra output that wasn't
there before.  I think this extra output is probably more confusing than
seeing the inline definitions from system header files.  So, I've
decided not to package the new upstream release for the time being.

Upstream and I have talked and I think we have come up with a good way
to get rid of the extra output I mentioned while keeping the -X option
around.  Hopefully, upstream will have time to make the changes and
release a new version sometime soon.

KEN

-- 
Kenneth J. Pronovici <pronovic@debian.org>
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, pronovic@debian.org (Kenneth J. Pronovici):
Bug#235824; Package cproto. Full text and rfc822 format available.

Acknowledgement sent to dickey@his.com (Thomas Dickey):
Extra info received and forwarded to list. Copy sent to pronovic@debian.org (Kenneth J. Pronovici). Full text and rfc822 format available.

Message #49 received at 235824@bugs.debian.org (full text, mbox):

From: dickey@his.com (Thomas Dickey)
To: 235824@bugs.debian.org
Cc: dickey@his.com (Thomas Dickey)
Subject: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=235824
Date: Thu, 25 Mar 2004 20:04:46 -0500
>                       Debian Bug report logs - #235824
>                    cproto: inline processing is recursive
I uploaded a new version, which incorporates your suggested changes.
That's
	ftp://invisible-island.net/cproto/cproto-4_7c.tgz
-- 
Thomas E. Dickey <dickey@invisible-island.net>
http://invisible-island.net
ftp://invisible-island.net



Information forwarded to debian-bugs-dist@lists.debian.org, pronovic@debian.org (Kenneth J. Pronovici):
Bug#235824; Package cproto. Full text and rfc822 format available.

Acknowledgement sent to dickey@his.com (Thomas Dickey):
Extra info received and forwarded to list. Copy sent to pronovic@debian.org (Kenneth J. Pronovici). Full text and rfc822 format available.

Reply sent to pronovic@debian.org (Kenneth J. Pronovici):
You have taken responsibility. Full text and rfc822 format available.

Notification sent to Patricio Rojo <pato@astro.cornell.edu>:
Bug acknowledged by developer. Full text and rfc822 format available.

Message #59 received at 235824-close@bugs.debian.org (full text, mbox):

From: pronovic@debian.org (Kenneth J. Pronovici)
To: 235824-close@bugs.debian.org
Subject: Bug#235824: fixed in cproto 4.7c-1
Date: Tue, 30 Mar 2004 21:47:05 -0500
Source: cproto
Source-Version: 4.7c-1

We believe that the bug you reported is fixed in the latest version of
cproto, which is due to be installed in the Debian FTP archive:

cproto_4.7c-1.diff.gz
  to pool/main/c/cproto/cproto_4.7c-1.diff.gz
cproto_4.7c-1.dsc
  to pool/main/c/cproto/cproto_4.7c-1.dsc
cproto_4.7c-1_i386.deb
  to pool/main/c/cproto/cproto_4.7c-1_i386.deb
cproto_4.7c.orig.tar.gz
  to pool/main/c/cproto/cproto_4.7c.orig.tar.gz



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 235824@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Kenneth J. Pronovici <pronovic@debian.org> (supplier of updated cproto package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Tue, 30 Mar 2004 19:58:33 -0600
Source: cproto
Binary: cproto
Architecture: source i386
Version: 4.7c-1
Distribution: unstable
Urgency: low
Maintainer: Kenneth J. Pronovici <pronovic@debian.org>
Changed-By: Kenneth J. Pronovici <pronovic@debian.org>
Description: 
 cproto     - Generate C function prototypes and convert function definitions
Closes: 235824
Changes: 
 cproto (4.7c-1) unstable; urgency=low
 .
   * New upstream release.
     - Includes equivalent of patch as used to close #228801 (see below).
     - Supports -X option to filter out unwanted definitions (closes: #235824).
   * Now configure using --enable-llib option, so we don't need lint installed.
   * Added gcc to Depends: line since -X option requires GCC to work; I assume
     most users will already have gcc installed anyway, if they are developers.
Files: 
 8d45d287021856319a4e5b2ea021e299 576 devel optional cproto_4.7c-1.dsc
 c7fb8586a4b402e830d1310f3aadef91 118592 devel optional cproto_4.7c.orig.tar.gz
 19e0535d950c0c25737e7a2e9f94fb00 2128 devel optional cproto_4.7c-1.diff.gz
 9eddc38d37438a4011a131fec2de4f55 42234 devel optional cproto_4.7c-1_i386.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFAai2o8On2ujzZUQQRAs2xAKDzW/7jNMA4A6qHn1F14WyRiLrdnQCgxiCi
U6lBgNQe6BM/R9iH3mkhO/A=
=XCf+
-----END PGP SIGNATURE-----




Information forwarded to debian-bugs-dist@lists.debian.org, pronovic@debian.org (Kenneth J. Pronovici):
Bug#235824; Package cproto. Full text and rfc822 format available.

Acknowledgement sent to Patricio Rojo <pato@astro.cornell.edu>:
Extra info received and forwarded to list. Copy sent to pronovic@debian.org (Kenneth J. Pronovici). Full text and rfc822 format available.

Message #64 received at 235824@bugs.debian.org (full text, mbox):

From: Patricio Rojo <pato@astro.cornell.edu>
To: 235824@bugs.debian.org
Subject: Re: Bug#235824 acknowledged by developer (Bug#235824: fixed in cproto 4.7c-1)
Date: Thu, 01 Apr 2004 20:03:39 -0500
Thank you very much!

          Patricio





Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Sun Apr 20 09:18:26 2014; Machine Name: beach.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.