# <span class='text-muted'>083.</span> Propagation of an optional argument

<span style='font-size: small;' class='text-muted'>topic: {ref}`procedures`</span>

```{note}
This tip is a draft[^draft].

[^draft]: From the perspective of FortranTip Browser, "draft" means that
  it hasn't been edited for formatting,
  hasn't had corresponding Fortran programs added,
  the text content hasn't been enhanced, etc.
  Draft texts are extracted from the corresponding Tweet using the Twitter API.
```

A procedure with an OPTIONAL argument can call a procedure with that argument if it is OPTIONAL there too. The PRESENT status of the argument propagates to called procedures. The optval function of the Fortran stdlib project exploits this.


---

<blockquote class="twitter-tweet"><p lang="en" dir="ltr">A procedure with an OPTIONAL argument can call a procedure with that argument if it is OPTIONAL there too. The PRESENT status of the argument propagates to called procedures. The optval function of the Fortran stdlib project exploits this. <a href="https://t.co/amhSL1cbY7">pic.twitter.com/amhSL1cbY7</a></p>&mdash; FortranTip (@fortrantip) <a href="https://twitter.com/fortrantip/status/1479805991382360066?ref_src=twsrc%5Etfw">January 8, 2022</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>