The following code triggers the debug trap 3 times. I am however expecting only 2 executions - one for `foo`, the second for `echo hello`:

```
foo() {
    echo hello
}

set -T
trap 'echo oops' DEBUG
foo

```

**Output:**

```
oops
oops
oops
hello

```

**Expected output:**

```
oops
oops
hello

```

---

**`Bash` versions tested:**

```
GNU bash, version 4.3.30(1)-release (x86_64-unknown-linux-gnu)
GNU bash, version 4.4.19(1)-release (x86_64-pc-linux-gnu)
GNU bash, version 5.0.0(1)-alpha (x86_64-pc-linux-gnu)

```

I am pretty sure I just misunderstood the manual and that I am missing something really simple/obvious here.