*** toplev.c.orig	Thu Mar 23 14:19:51 2000
--- toplev.c		Thu Mar 23 15:57:06 2000
***************
*** 304,309 ****
--- 304,315 ----
  
  int optimize = 0;
  
+ #ifdef GPC
+ /* Nonzero if called with --version (i.e. gpc called with --verbose).  */
+ 
+ int version_flag = 0;
+ #endif /* GPC */
+ 
  /* Number of error messages and warning messages so far.  */
  
  int errorcount = 0;
***************
*** 590,595 ****
--- 596,607 ----
  
  int flag_pedantic_errors = 0;
  
+ #ifdef GPC
+ /* Nonzero means copy the source input to stderr.  */
+ 
+ extern int flag_debug_source;
+ #endif /* GPC */
+ 
  /* flag_schedule_insns means schedule insns within basic blocks (before
     local_alloc).
     flag_schedule_insns_after_reload means schedule insns after
***************
*** 2897,2902 ****
--- 2909,2921 ----
  #define ASM_FINISH_DECLARE_OBJECT(FILE, DECL, TOP, END)
  #endif
  
+ /* Dito.  */
+ #ifdef GPC
+ #define NOT_IN_GPC(X)
+ #else /* not GPC */
+ #define NOT_IN_GPC(X) X
+ #endif /* not GPC */
+ 
    /* Forward declarations for nested functions are not "external",
       but we need to treat them as if they were.  */
    if (TREE_STATIC (decl) || DECL_EXTERNAL (decl)
***************
*** 2914,2922 ****
  		 /* Don't output anything
  		    when a tentative file-scope definition is seen.
  		    But at end of compilation, do output code for them.  */
! 		 if (! (! at_end && top_level
  			&& (DECL_INITIAL (decl) == 0
! 			    || DECL_INITIAL (decl) == error_mark_node)))
  		   assemble_variable (decl, top_level, at_end, 0);
  	       if (!output_bytecode
  		   && decl == last_assemble_variable_decl)
--- 2933,2941 ----
  		 /* Don't output anything
  		    when a tentative file-scope definition is seen.
  		    But at end of compilation, do output code for them.  */
! NOT_IN_GPC (     if (! (! at_end && top_level
  			&& (DECL_INITIAL (decl) == 0
!                           || DECL_INITIAL (decl) == error_mark_node)))     )
  		   assemble_variable (decl, top_level, at_end, 0);
  	       if (!output_bytecode
  		   && decl == last_assemble_variable_decl)
***************
*** 3741,3747 ****
--- 3760,3768 ----
    register int i;
    char *filename = 0;
    int flag_print_mem = 0;
+ #ifndef GPC
    int version_flag = 0;
+ #endif /* not GPC */
    char *p;
  
    /* save in case md file wants to emit args as a comment.  */
***************
*** 3956,3961 ****
--- 3977,3987 ----
  		  case 'R':
  		    sched2_dump = 1;
  		    break;
+ #ifdef GPC
+                 case 'Y':
+                   flag_debug_source = 1;
+                   break;
+ #endif /* GPC */
  		  case 'y':
  		    set_yydebug (1);
  		    break;
