<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: aCC vs. ansic in Operating System - Linux</title>
    <link>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745369#M101485</link>
    <description>Hi Clay, hi Dennis,&lt;BR /&gt; &lt;BR /&gt;thanks for the replies.&lt;BR /&gt; &lt;BR /&gt;I would expect the developers to write ANSI C compliant code,&lt;BR /&gt;why I wouldn't care about any K&amp;amp;R idiosyncrasies.&lt;BR /&gt;Judging from their applications I would also assume that there should be no need for extra libraries or APIs for audio or Motif stuff.&lt;BR /&gt;As for lint (is it some sort of lexical parser?) I think there are plenty OpenSource alternatives (e.g. lex, bison?).&lt;BR /&gt;So I am simply awaiting further complaints from the developers should anything vital be missing.&lt;BR /&gt;Yet they haven't responded,&lt;BR /&gt;so I gather the suffering is bearable.&lt;BR /&gt;&lt;BR /&gt;Rgds&lt;BR /&gt;Ralph</description>
    <pubDate>Tue, 07 Mar 2006 03:20:03 GMT</pubDate>
    <dc:creator>Ralph Grothe</dc:creator>
    <dc:date>2006-03-07T03:20:03Z</dc:date>
    <item>
      <title>aCC vs. ansic</title>
      <link>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745366#M101482</link>
      <description>Hello,&lt;BR /&gt;  &lt;BR /&gt;for a customer's development box we were asked to order and install the HP-UX ANSI C++ compiler (for 11.11 PARISC).&lt;BR /&gt;For this product we received a license for which I had had a codeword generated&lt;BR /&gt;which enabled me to install all the aCC depots from 11.11 Aplication CDs (CD 1).&lt;BR /&gt;Now the developers moan because they are missing anything beneath /opt/ansic.&lt;BR /&gt;However, I am convinced that they won't need the ansic anymore as I consider C to be a subset of C++ and thus /opt/aCC/bin/aCC being an adequate replacement for /opt/ansic/bin/cc.&lt;BR /&gt;To prove to myself that the aCC can produce executables from a C source I wrote a tiny program that merely lists dirs' contents,&lt;BR /&gt;but which uses ANSI-C style formal parameter prototyping which the K/R default HP-UX cc would reject.&lt;BR /&gt;Since this little test worked fine I told them that they should invoke aCC rather than cc (or set their env, e.g. CC, appropiately).&lt;BR /&gt;I haven't yet tried a larger build (e.g. like Perl from sources) so I cannot tell if I have missed something.&lt;BR /&gt;Could it really be that we required an additional license for ansic?&lt;BR /&gt;Is there anything which cannot be done with aCC and which would require ansic?&lt;BR /&gt;   &lt;BR /&gt;Regards&lt;BR /&gt;Ralph</description>
      <pubDate>Mon, 06 Mar 2006 12:16:35 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745366#M101482</guid>
      <dc:creator>Ralph Grothe</dc:creator>
      <dc:date>2006-03-06T12:16:35Z</dc:date>
    </item>
    <item>
      <title>Re: aCC vs. ansic</title>
      <link>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745367#M101483</link>
      <description>There is a case in which you need both aCC and ANSI/C but if I could only purchase one, my choice would be aCC. aCC speaks C++ and ANSI/C (but does not understand K&amp;amp;R); ANSI/C speaks ANSI C and K&amp;amp;R C (but not C++); ANSI/C also includes some addional header files that the Bundled C compiler does not. If you have to development in C++, ANSI/C, and K&amp;amp;R C then you need both products. Any production C should have long been converted to ANSI syntax so this shouldn't be an issue.</description>
      <pubDate>Mon, 06 Mar 2006 12:38:01 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745367#M101483</guid>
      <dc:creator>A. Clay Stephenson</dc:creator>
      <dc:date>2006-03-06T12:38:01Z</dc:date>
    </item>
    <item>
      <title>Re: aCC vs. ansic</title>
      <link>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745368#M101484</link>
      <description>Clay is correct.  You are missing some things if you don't have C Developer's Bundle:&lt;BR /&gt;HP-UX Developer's Toolkit - X11, Motif, Imake&lt;BR /&gt;HP-UX Developer's Toolkit - Imaging&lt;BR /&gt;CDE Developer Kit&lt;BR /&gt;HP-UX Audio Developer Kit&lt;BR /&gt;    &lt;BR /&gt;And under /opt/ansic/:&lt;BR /&gt;C Language Analysis Tools&lt;BR /&gt;&lt;BR /&gt;So you also won't have lint.&lt;BR /&gt;&lt;BR /&gt;Other differences in aC++ is that is is typically stricter for C.  It doesn't have inline PA assembly support.&lt;BR /&gt;&lt;BR /&gt;For IPF, the C and C++ compilers are exactly the same.  There is no lint, use +wlint instead.  And the above "kits" are still a difference.</description>
      <pubDate>Mon, 06 Mar 2006 21:32:17 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745368#M101484</guid>
      <dc:creator>Dennis Handly</dc:creator>
      <dc:date>2006-03-06T21:32:17Z</dc:date>
    </item>
    <item>
      <title>Re: aCC vs. ansic</title>
      <link>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745369#M101485</link>
      <description>Hi Clay, hi Dennis,&lt;BR /&gt; &lt;BR /&gt;thanks for the replies.&lt;BR /&gt; &lt;BR /&gt;I would expect the developers to write ANSI C compliant code,&lt;BR /&gt;why I wouldn't care about any K&amp;amp;R idiosyncrasies.&lt;BR /&gt;Judging from their applications I would also assume that there should be no need for extra libraries or APIs for audio or Motif stuff.&lt;BR /&gt;As for lint (is it some sort of lexical parser?) I think there are plenty OpenSource alternatives (e.g. lex, bison?).&lt;BR /&gt;So I am simply awaiting further complaints from the developers should anything vital be missing.&lt;BR /&gt;Yet they haven't responded,&lt;BR /&gt;so I gather the suffering is bearable.&lt;BR /&gt;&lt;BR /&gt;Rgds&lt;BR /&gt;Ralph</description>
      <pubDate>Tue, 07 Mar 2006 03:20:03 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745369#M101485</guid>
      <dc:creator>Ralph Grothe</dc:creator>
      <dc:date>2006-03-07T03:20:03Z</dc:date>
    </item>
    <item>
      <title>Re: aCC vs. ansic</title>
      <link>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745370#M101486</link>
      <description>Lint is a tool which looks for discrepancies in the C source but it really only is needed for K&amp;amp;R C. When ANSI/C came along, the function prototypes greatly reduced the need for lint.&lt;BR /&gt;&lt;BR /&gt;Let's suppose we have a function that looks like this:&lt;BR /&gt;&lt;BR /&gt;char *whatever(a,b,c)&lt;BR /&gt;int a;&lt;BR /&gt;double b;&lt;BR /&gt;char *c&lt;BR /&gt;{&lt;BR /&gt;  static char s[512];&lt;BR /&gt;&lt;BR /&gt;  (void) sprintf(s,"%d %10.2lf %s\n",a,b,c);&lt;BR /&gt;  return(s);&lt;BR /&gt;} /* whatever */&lt;BR /&gt;&lt;BR /&gt;----------------------------------&lt;BR /&gt;&lt;BR /&gt;Typically in K&amp;amp;R, all you would do is&lt;BR /&gt;extern char *whatever();&lt;BR /&gt;&lt;BR /&gt;Notice that there is no listing of the formal paramters of the extern'ed function.&lt;BR /&gt;&lt;BR /&gt;In the calls to whatever, rather than using exactly 3 arguments, you might only use 2 (or 4 or 0) and the compiler would not object. You might use the correct number of arguments but the wrong type; e.g. rather than int,double,string (correct) you might call whatever with double, string, int arguments --- and again, the compiler would not complain.&lt;BR /&gt;&lt;BR /&gt;Lint's job is to look at all of these call's across multiple source files and make sure that the calls are consistant and report any possible problems found.&lt;BR /&gt;&lt;BR /&gt;All of this is not needed because in ANSI/C &lt;BR /&gt;extern char *whatever() &lt;BR /&gt;becomes&lt;BR /&gt;extern char  *whatever(int a, double b, char *c);&lt;BR /&gt;&lt;BR /&gt;Now the compiler itself can detect errors related to the number of arguments and their type so that lint is not needed.&lt;BR /&gt;&lt;BR /&gt;At the very least, explain this to your developers and they will think you really know your stuff --- especially if you neglect to tell them where you learned it.</description>
      <pubDate>Tue, 07 Mar 2006 10:44:33 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745370#M101486</guid>
      <dc:creator>A. Clay Stephenson</dc:creator>
      <dc:date>2006-03-07T10:44:33Z</dc:date>
    </item>
    <item>
      <title>Re: aCC vs. ansic</title>
      <link>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745371#M101487</link>
      <description>Hello Clay,&lt;BR /&gt;  &lt;BR /&gt;very kind of you to explain the purpose and usage of lint to me.&lt;BR /&gt;Btw, meanwhile I discovered a box administered by colleagues where they have an ansic installation, and there I could&lt;BR /&gt;man -M /opt/ansic/share/man lint&lt;BR /&gt;to get a terse overview, similar to your explanations.&lt;BR /&gt;Having learned this I would say that lint is rather a tool for veteran C diehearts.&lt;BR /&gt;By the time when I first took a book about programming C in my hands there had ANSI C been long enough around to have become a de-facto standard (although there were short side notes to depricated K&amp;amp;R style, as far as I remember).&lt;BR /&gt;Therefore I think we should have no need for this tool,&lt;BR /&gt;come on they demanded us to have a C++ compiler installed,&lt;BR /&gt;so I think that any self-respecting C++ programmer who can master something as obscure as C++ grammar should really have no problems switching from K&amp;amp;R to ANSI C ;-)&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Wed, 08 Mar 2006 08:30:09 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/acc-vs-ansic/m-p/3745371#M101487</guid>
      <dc:creator>Ralph Grothe</dc:creator>
      <dc:date>2006-03-08T08:30:09Z</dc:date>
    </item>
  </channel>
</rss>

