Path: utzoo!mnetor!uunet!husc6!ut-sally!utah-cs!utah-gr!uplherc!esunix!sedwards From: sedwards@esunix.UUCP (Scott Edwards) Newsgroups: comp.arch Subject: Type Conversions - (Was: Bad RISC) Message-ID: <753@esunix.UUCP> Date: 17 Mar 88 17:22:51 GMT References: <2035@ho95e.ATT.COM> Organization: Evans & Sutherland, Salt Lake City, Utah Lines: 12 From article <2035@ho95e.ATT.COM>, by wcs@ho95e.ATT.COM (Bill.Stewart.): > type-conversions float->double, char->int, short->int. > On machines with signed characters, this does a sign-extend; on machines with > unsigned it doesn't. I assume unsigned-chars on a signed-char machine > get promoted to unsigned for passing. Since you brought this up, I've recently discovered that in the ANSI draft that prototypes override the implicit type conversions, as in float will not be promoted to double if the prototype declares it to be float. Does this mean that char would not be promoted to int? If so what would that to machines that have alignment restrictions and parameters are passed on the stack? Just curious.