1. 17 Jan, 2013 10 commits
  2. 16 Jan, 2013 2 commits
  3. 15 Jan, 2013 2 commits
  4. 14 Jan, 2013 12 commits
  5. 13 Jan, 2013 3 commits
  6. 12 Jan, 2013 7 commits
  7. 11 Jan, 2013 4 commits
    • Brad Fitzpatrick's avatar
      net/http/cgi: fix test case sensitivity on Windows · 05bf9a45
      Brad Fitzpatrick authored
      Fixes #4645
      
      R=golang-dev, alex.brainman, minux.ma
      CC=golang-dev
      https://golang.org/cl/7105047
      05bf9a45
    • Robert Griesemer's avatar
      8b62f54e
    • Brad Fitzpatrick's avatar
      database/sql: document args, add a couple examples · 20130f14
      Brad Fitzpatrick authored
      Fixes #3460
      
      R=golang-dev, alex.brainman
      CC=golang-dev
      https://golang.org/cl/7096046
      20130f14
    • Robert Griesemer's avatar
      go/types: Moving from *ast.Objects to types.Objects (step 1). · 5a9463bd
      Robert Griesemer authored
      The existing type checker was relying on augmenting ast.Object
      fields (empty interfaces) for its purposes. While this worked
      for some time now, it has become increasingly brittle. Also,
      the need for package information for Fields and Methods would
      have required a new field in each ast.Object. Rather than making
      them bigger and the code even more subtle, in this CL we are moving
      away from ast.Objects.
      
      The types packge now defines its own objects for different
      language entities (Const, Var, TypeName, Func), and they
      implement the types.Object interface. Imported packages
      create a Package object which holds the exported entities
      in a types.Scope of types.Objects.
      
      For type-checking, the current package is still using ast.Objects
      to make this transition manageable. In a next step, the type-
      checker will also use types.Objects instead, which opens the door
      door to resolving ASTs entirely by the type checker. As a result,
      the AST and type checker become less entangled, and ASTs can be
      manipulated "by hand" or programmatically w/o having to worry
      about scope and object invariants that are very hard to maintain.
      
      (As a consequence, a future parser can do less work, and a
      future AST will not need to define objects and scopes anymore.
      Also, object resolution which is now split across the parser,
      the ast, (ast.NewPackage), and even the type checker (for composite
      literal keys) can be done in a single place which will be simpler
      and more efficient.)
      
      Change details:
      - Check now takes a []*ast.File instead of a map[string]*ast.File.
      It's easier to handle (I deleted code at all use sites) and does
      not suffer from undefined order (which is a pain for testing).
      - ast.Object.Data is now a *types.Package rather then an *ast.Scope
      if the object is a package (obj.Kind == ast.Pkg). Eventually this
      will go away altogether.
      - Instead of an ast.Importer, Check now uses a types.Importer
      (which returns a *types.Package).
      - types.NamedType has two object fields (Obj Object and obj *ast.Object);
      eventually there will be only Obj. The *ast.Object is needed during
      this transition since a NamedType may refer to either an imported
      (using types.Object) or locally defined (using *ast.Object) type.
      - ast.NewPackage is not used anymore - there's a local copy for
      package-level resolution of imports.
      - struct fields now take the package origin into account.
      - The GcImporter is now returning a *types.Package. It cannot be
      used with ast.NewPackage anymore. If that functionality is still
      used, a copy of the old GcImporter should be made locally (note
      that GcImporter was part of exp/types and it's API was not frozen).
      - dot-imports are not handled for the time being (this will come back).
      
      R=adonovan
      CC=golang-dev
      https://golang.org/cl/7058060
      5a9463bd