Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/branches/primop-branch-3/compiler/Elaborator/print/ppmod.sml
ViewVC logotype

Diff of /sml/branches/primop-branch-3/compiler/Elaborator/print/ppmod.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2407, Fri Apr 13 04:27:56 2007 UTC revision 2408, Mon Apr 16 06:10:46 2007 UTC
# Line 386  Line 386 
386          else          else
387          case sign          case sign
388            of M.SIG {stamp,name,elements,typsharing,strsharing,...} =>            of M.SIG {stamp,name,elements,typsharing,strsharing,...} =>
389                 let
390                     (* Filter out ordinary dcon that do not print in ppElements
391                        for element printing so that we do not print the spurious
392                        newline. We still use the unfiltered elements
393                        for determining whether the sig ... end should be
394                        multiline even with just one datatype. *)
395                    val elems' = List.filter
396                                     (fn (_,M.CONspec{spec=dcon,...}) => false |
397                                         _ => true)
398                                     elements
399                 in
400               if !internals then               if !internals then
401                 (openHVBox 0;                 (openHVBox 0;
402                   pps "SIG:";                   pps "SIG:";
# Line 424  Line 435 
435                    openHVBox 0;                    openHVBox 0;
436                     case elements                     case elements
437                       of nil => ()                       of nil => ()
438                        | _ => (ppElements (env,depth,entityEnvOp) ppstrm elements;                        | _ => (ppElements (env,depth,entityEnvOp) ppstrm elems';
439                                somePrint := true);                                somePrint := true);
440                     case strsharing                     case strsharing
441                       of nil => ()                       of nil => ()
# Line 443  Line 454 
454                       | _ => newline());                       | _ => newline());
455                    pps "end";                    pps "end";
456                   closeBox())                   closeBox())
457                 end
458             | M.ERRORsig => pps "<error sig>"             | M.ERRORsig => pps "<error sig>"
459      end      end
460    

Legend:
Removed from v.2407  
changed lines
  Added in v.2408

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0