The reason you are getting "access denied":
Code:
C:\Users\Micke>set PATH=c:\cygwin\bin;%PATH%
C:\Users\Micke>gcc
Access denied.
C:\Users\Micke>file /usr/bin/gcc.exe
/usr/bin/gcc.exe: symbolic link to `/etc/alternatives/gcc'
C:\Users\Micke>file /etc/alternatives/gcc
/etc/alternatives/gcc: symbolic link to `/usr/bin/gcc-4.exe'
C:\Users\Micke>gcc-4
gcc-4: no input files
C:\Users\Micke>bash
bash-3.2$ gcc
gcc: no input files
Notice that /usr/bin/gcc is a symlink and windows does not support symlinks. (Technically it does; But not in the way cygwin does it)
Either use a cygwin aware shell like bash or sh, or invoke gcc-3.exe or gcc-4.exe directly.
Edit:
Post updated, I was wrong about about why it doesn't work in my original post.