title: PowerShell equivalent to bash's set -u
body: <p>Normally, bash replaces an undefined variable with an empty string:</p>
  
  <pre><code>$ echo "$BLAH things after blah"
   things after blah
  </code></pre>
  
  <p>But there's a handy way to change this behavior:</p>
  
  <pre><code>$ set -u
  $ echo "$BLAH things after blah"
  sh.exe": BLAH: unbound variable
  </code></pre>
  
  <p>(Pardon the <code>exe</code>. I'm running under MSYS bash.) I put this at the top of all my bash scripts. (Fail fast being a Good Thing and all that.)</p>
  
  <p>PowerShell normally behaves the same way as bash:</p>
  
  <pre><code>PS C:\&gt; echo "$blah things after blah"
   things after blah
  </code></pre>
  
  <p>My question: Is there any thing in PowerShell that changes this behavior so it will cause an error when I attempt to use an uninitialized variable?</p>