Skip to content

Commit 0158e92

Browse files
committed
made argument pad_with non-optional to solve ambiguous interface error
1 parent 2083f32 commit 0158e92

File tree

1 file changed

+10
-16
lines changed

1 file changed

+10
-16
lines changed

src/stdlib_strings.f90

Lines changed: 10 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -590,7 +590,7 @@ end function replace_all_char_char_char
590590
pure function padl_string_string(string, output_length, pad_with) result(res)
591591
type(string_type), intent(in) :: string
592592
integer, intent(in) :: output_length
593-
type(string_type), intent(in), optional :: pad_with
593+
type(string_type), intent(in) :: pad_with
594594
type(string_type) :: res
595595

596596
res = string_type(padl_char_char(char(string), output_length, char(pad_with)))
@@ -602,7 +602,7 @@ end function padl_string_string
602602
pure function padl_string_char(string, output_length, pad_with) result(res)
603603
type(string_type), intent(in) :: string
604604
integer, intent(in) :: output_length
605-
character(len=1), intent(in), optional :: pad_with
605+
character(len=1), intent(in) :: pad_with
606606
type(string_type) :: res
607607

608608
res = string_type(padl_char_char(char(string), output_length, pad_with))
@@ -614,7 +614,7 @@ end function padl_string_char
614614
pure function padl_char_string(string, output_length, pad_with) result(res)
615615
character(len=*), intent(in) :: string
616616
integer, intent(in) :: output_length
617-
type(string_type), intent(in), optional :: pad_with
617+
type(string_type), intent(in) :: pad_with
618618
character(len=max(len(string), output_length)) :: res
619619

620620
res = padl_char_char(string, output_length, char(pad_with))
@@ -626,14 +626,11 @@ end function padl_char_string
626626
pure function padl_char_char(string, output_length, pad_with) result(res)
627627
character(len=*), intent(in) :: string
628628
integer, intent(in) :: output_length
629-
character(len=1), intent(in), optional :: pad_with
629+
character(len=1), intent(in) :: pad_with
630+
character(len=max(len(string), output_length)) :: res
630631
integer :: string_length
631-
character(len=max(string_length, output_length)) :: res
632632

633633
string_length = len(string)
634-
if (.not. present(pad_with)) then
635-
pad_with = ' '
636-
end if
637634

638635
if (string_length < output_length) then
639636
res = repeat(pad_with, output_length - string_length)
@@ -650,7 +647,7 @@ end function padl_char_char
650647
pure function padr_string_string(string, output_length, pad_with) result(res)
651648
type(string_type), intent(in) :: string
652649
integer, intent(in) :: output_length
653-
type(string_type), intent(in), optional :: pad_with
650+
type(string_type), intent(in) :: pad_with
654651
type(string_type) :: res
655652

656653
res = string_type(padr_char_char(char(string), output_length, char(pad_with)))
@@ -662,7 +659,7 @@ end function padr_string_string
662659
pure function padr_string_char(string, output_length, pad_with) result(res)
663660
type(string_type), intent(in) :: string
664661
integer, intent(in) :: output_length
665-
character(len=1), intent(in), optional :: pad_with
662+
character(len=1), intent(in) :: pad_with
666663
type(string_type) :: res
667664

668665
res = string_type(padr_char_char(char(string), output_length, pad_with))
@@ -674,7 +671,7 @@ end function padr_string_char
674671
pure function padr_char_string(string, output_length, pad_with) result(res)
675672
character(len=*), intent(in) :: string
676673
integer, intent(in) :: output_length
677-
type(string_type), intent(in), optional :: pad_with
674+
type(string_type), intent(in) :: pad_with
678675
character(len=max(len(string), output_length)) :: res
679676

680677
res = padr_char_char(string, output_length, char(pad_with))
@@ -686,14 +683,11 @@ end function padr_char_string
686683
pure function padr_char_char(string, output_length, pad_with) result(res)
687684
character(len=*), intent(in) :: string
688685
integer, intent(in) :: output_length
689-
character(len=1), intent(in), optional :: pad_with
686+
character(len=1), intent(in) :: pad_with
687+
character(len=max(len(string), output_length)) :: res
690688
integer :: string_length
691-
character(len=max(string_length, output_length)) :: res
692689

693690
string_length = len(string)
694-
if (.not. present(pad_with)) then
695-
pad_with = ' '
696-
end if
697691

698692
res = string
699693
if (string_length < output_length) then

0 commit comments

Comments
 (0)