@@ -109,7 +109,7 @@ end function constructor
109109 subroutine build (self , code , message , cause )
110110 ! ! Build instance
111111
112- class(ErrorV), intent (inout ) :: self
112+ class(ErrorV), intent (out ) :: self
113113 ! Hopefully can leave without docstring (like Python)
114114
115115 integer , intent (in ) :: code
@@ -129,14 +129,14 @@ subroutine build(self, code, message, cause)
129129! call self%cause%build(cause%code, cause%message, cause%cause)
130130! self%cause = cause
131131 if (present (message)) then
132- self % message = trim (message) // " --> Cause: " // cause % message
132+ self % message = adjustl ( trim (message) ) // " --> Cause: " // cause % message
133133 else
134134 self % message = " --> Cause: " // cause % message
135135 end if
136136
137137 else
138138 if (present (message)) then
139- self % message = trim (message)
139+ self % message = adjustl ( trim (message) )
140140 end if
141141 end if
142142
@@ -153,10 +153,7 @@ subroutine finalise(self)
153153 if (allocated (self% message)) deallocate (self% message)
154154 ! MZ when the object is finalized or goes out of scope, its pointer components are destroyed.
155155 ! Hopefully no shared ownership??
156- if (associated (self% cause))then
157- deallocate (self% cause)
158- nullify(self% cause)
159- end if
156+ if (associated (self% cause)) nullify(self% cause)
160157
161158 end subroutine finalise
162159
0 commit comments