× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



... it doesn't make too much sense to me to have a possibility to name a program entry point "exit". If its named main then its meant as program entry point, in rpg you are ending up with H main(main) to clearify that main should be real program entry point. looks to me like the need to code /free and /end-free - what else should a line be with a blank at position 6??? The diffrence you mentioned is, that C has overloading and needs a fixed signature for main, but in RPG we are ending up at the same point, in reality the signature is the same: a main has zero to n parameters, passed by untyped pointers.

Dieter

--------------------------------------------------
From: "Barbara Morris" <bmorris@xxxxxxxxxx>
Sent: Friday, November 05, 2010 11:43 PM
Newsgroups: midrange.rpg400-l
To: <rpg400-l@xxxxxxxxxxxx>
Subject: Re: MAIN or cycleless programs.

On 2010/11/5 3:47 PM, dieter.bender@xxxxxxxxxxxx wrote:

... (funny: why didn't they hav a a look to C, where
main is named "main" - shudder). ...

Because in C, there's no relationship between the prototype for the
program and the main procedure.

#pragma linkage(MYPGM, OS)
void MYPGM(int *i, int *j, char *p);
main(int argc, void *argv[])
{
// The C compiler doesn't know or care that this
// main() function matches the MYPGM prototype
}

This gives a lot of flexibility, since I can interpret the argv
parameter any way I like. But I'd rather that the C compiler be able to
catch the error if I code this

main(int argc, void *argv[])
{
char *p = (char *) argv[1];
int i = *(int *) argv[2];
int j = *(int *) argv[3];
}

For RPG, if every main procedure were to be called "main", you'd need
two prototypes for each main procedure, one called "main" in the module
containing the main procedure, and one called "prtreport" or whatever in
the modules that would call the main procedure.
--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.