It does seem to be the debugger that is the issue. With it switched on I got the same error. When I switched it off in the Tools| Debugger option, the test code works OK.
"Project myproj raised an exception class: 'External: ?' "
Ok, there is one way it can be the debugger, still baffled how that would be triggered in your case.
GDB can not recover from certain Signals that your process may receive. Well normally you process does not receive any. Except SigTrap (IIRC or maybe it was SigInt) which the IDE sends itself, and which is handled.
"Project myproj raised an exception class: 'External: ?' "
So if for some reason the above is the result of such a signal, then that's it. You can open the "Debug output" it may be there, or use --debug-log= opr any of the options on the page at the bottom of this msg to see if any useful info can be collected.
This Signal issue is also what creates the issue of starting an app, when Bitdefender or Comodo firewall is installed, They cause a signal, gdb can't handle it, bang.
Maybe you AV is interrupting when you access the file-system? Try setting your AV to "game-mode" or similar?
Why this only happens after you upgraded, I do not know. Maybe the newer FPC uses different methods to access the filesystem? Maybe it's the newer GDB? (google mingw / gdb => and find plenty of GDB versions.)
--
Info on debugger:
http://wiki.lazarus.freepascal.org/GDB_Debugger_Tips