# Programming errors by language

**URL:** <https://fortran-lang.discourse.group/t/programming-errors-by-language/512>\
**Category:** Uncategorized\
**Created:** [December 21, 2020, 9:21pm UTC](https://fortran-lang.discourse.group/t/programming-errors-by-language/512 "2020-12-21T21:21:51Z")\
**Posts on this page:** 1\
**Showing post:** 11

<div class="post-metadata">

**Author:** ![vmagnin](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/vmagnin/32/28_2.png) [@vmagnin](https://fortran-lang.discourse.group/u/vmagnin)\
**Post date:** [April 13, 2021, 7:20pm UTC](https://fortran-lang.discourse.group/t/programming-errors-by-language/512/11 "2021-04-13T19:20:24Z")

</div>

I have updated some of my projects with such commands:

```bash
$ find . -iname *.f90 -exec sed -i 's/use iso_c_binding/use, intrinsic :: iso_c_binding/' '{}' \;

```

Here, `find` will recursively search all the `.f90` files in a project and apply the following `sed` command to replace the string `use iso_c_binding` by `use, intrinsic :: iso_c_binding`. The option `-i` means `--in-place`: the file is modified instead of begin written on the standard output. And `'{}'` will be replaced by the path of each Fortran file.

We have assumed that all was written in lowercase, but you can also use the `\|` operator (an escaped |) to search variants. The parenthesis around each expression are also escaped:

```bash
$ find . -iname *.f90 -exec sed -i 's/\(use iso_fortran_env\)\|\(use ISO_FORTRAN_ENV\)/use, intrinsic :: iso_fortran_env/' '{}' \;

```

I have tested on some projects.  
Of course, you should first make a test on a copy of your project, as all files will me modified without asking confirmation.

Note: there is three other intrinsic modules, the IEEE modules.

---

_[View the full topic](https://fortran-lang.discourse.group/t/programming-errors-by-language/512)._
