Commit d464f8e9 by Janne Blomqvist Committed by Paul Brook

write.c (write_logical): Don't print extra blank.

	* io/write.c (write_logical): Don't print extra blank.
	(write_integer): Base field width on kind.
	(list_formatted_write): Output initial blank.

Co-Authored-By: Paul Brook <paul@codesourcery.com>

From-SVN: r81914
parent 000aa32a
2004-05-16 Janne Blomqvist <jblomqvi@cc.hut.fi> 2004-05-16 Janne Blomqvist <jblomqvi@cc.hut.fi>
Paul Brook <paul@codesourcery.com>
* io/write.c (write_logical): Don't print extra blank.
(write_integer): Base field width on kind.
(list_formatted_write): Output initial blank.
2004-05-16 Janne Blomqvist <jblomqvi@cc.hut.fi>
* io/io.h (flush): Add prototype. * io/io.h (flush): Add prototype.
* io/transfer.c (finalize_transfer): Flush partial records. * io/transfer.c (finalize_transfer): Flush partial records.
......
...@@ -875,12 +875,10 @@ write_char (char c) ...@@ -875,12 +875,10 @@ write_char (char c)
/* write_logical()-- Write a list-directed logical value */ /* write_logical()-- Write a list-directed logical value */
/* Default logical output should be L2
according to DEC fortran Manual. */
static void static void
write_logical (const char *source, int length) write_logical (const char *source, int length)
{ {
write_char (' ');
write_char (extract_int (source, length) ? 'T' : 'F'); write_char (extract_int (source, length) ? 'T' : 'F');
} }
...@@ -893,10 +891,33 @@ write_integer (const char *source, int length) ...@@ -893,10 +891,33 @@ write_integer (const char *source, int length)
char *p; char *p;
const char *q; const char *q;
int digits; int digits;
int width = 12; int width;
q = itoa (extract_int (source, length)); q = itoa (extract_int (source, length));
switch (length)
{
case 1:
width = 4;
break;
case 2:
width = 6;
break;
case 4:
width = 11;
break;
case 8:
width = 20;
break;
default:
width = 0;
break;
}
digits = strlen (q); digits = strlen (q);
if(width < digits ) if(width < digits )
...@@ -1039,6 +1060,7 @@ list_formatted_write (bt type, void *p, int len) ...@@ -1039,6 +1060,7 @@ list_formatted_write (bt type, void *p, int len)
{ {
g.first_item = 0; g.first_item = 0;
char_flag = 0; char_flag = 0;
write_char (' ');
} }
else else
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment