diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 19349a1a82b27901b08b82ed419fd06978dd355b..e3097249af4d60807057d4f7de67f4ec623df415 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,8 @@
+2016-09-30  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+	PR fortran/66643
+	* io.c (match_dt_unit): Peek check for missing format.
+
 2016-09-30  Fritz Reese  <fritzoreese@gmail.com>
 
 	PR fortran/77764
diff --git a/gcc/fortran/io.c b/gcc/fortran/io.c
index 48c15ef55f9bfbb63b0b49ce16e55792a10c0773..7c48c491eeb630200548ee871525a60ba9155475 100644
--- a/gcc/fortran/io.c
+++ b/gcc/fortran/io.c
@@ -2688,6 +2688,7 @@ static match
 match_dt_unit (io_kind k, gfc_dt *dt)
 {
   gfc_expr *e;
+  char c;
 
   if (gfc_match_char ('*') == MATCH_YES)
     {
@@ -2695,6 +2696,11 @@ match_dt_unit (io_kind k, gfc_dt *dt)
 	goto conflict;
 
       dt->io_unit = default_unit (k);
+
+      c = gfc_peek_ascii_char ();
+      if (c == ')')
+	gfc_error_now ("Missing format with default unit at %C");
+
       return MATCH_YES;
     }
 
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 93f72c329748395aa546e6dad1c48a4af3d2dbe2..01a18526be32d2385921e70773d14f8cb313982b 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2016-09-30  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+	PR fortran/66643
+	* gfortran.fortran-torture/compile/arrayio.f90: Update test.
+	* gfortran.fortran-torture/compile/write.f90: Update test.
+
 2016-09-30  Matthew Wawhab  <matthew.wahab@arm.com>
 
 	* gcc.target/arm/fp16-aapcs-3.c: Replace arm_fp16_ok with
diff --git a/gcc/testsuite/gfortran.fortran-torture/compile/arrayio.f90 b/gcc/testsuite/gfortran.fortran-torture/compile/arrayio.f90
index 1eec0bb59ce395e5af0cdfee872be3c61fce1c2e..8c333d437d292d3d11bb9641d3ad4dd9f572dd24 100644
--- a/gcc/testsuite/gfortran.fortran-torture/compile/arrayio.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/compile/arrayio.f90
@@ -8,5 +8,5 @@ program arrayio
       a(:, j) = (/ (i + (j - 1) * 5, i=1,5) /)
    end do
 
-   write (*) a
+   write (*,*) a
 end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/compile/write.f90 b/gcc/testsuite/gfortran.fortran-torture/compile/write.f90
index 50b83cc6a1248331cf8baef4ba3a06968852b386..82ca8be4bdd4bb69c43ec989bead7facf43be6a7 100644
--- a/gcc/testsuite/gfortran.fortran-torture/compile/write.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/compile/write.f90
@@ -1,5 +1,5 @@
 ! Program to test simple IO
 program testwrite
-   write (*) 1
-   write (*) "Hello World"
+   write (*,*) 1
+   write (*,*) "Hello World"
 end program