Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Comparing changes

Choose two branches to see what's changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
...
Checking mergeability… Don't worry, you can still create the pull request.
  • 4 commits
  • 4 files changed
  • 0 commit comments
  • 2 contributors
Commits on Mar 22, 2012
@VladD2 VladD2 Merge pull request #317 from Sectoid/master
Fix generic methods emit for value-type type-params
f14ba89
Commits on Mar 28, 2012
@NN--- Merge branch 'master' of https://github.com/rsdn/nemerle 518d1ed
Commits on Apr 06, 2012
@VladD2 VladD2 [VS] Fix VS tests. 7ef2f01
Commits on Apr 10, 2012
@NN--- Merge remote-tracking branch 'base/master' 707a5e4
View
11 VsIntegration/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.Type.n
@@ -607,12 +607,17 @@ namespace Nemerle.Completion2
| me is TExpr.MacroEnvelope => (QuickTipInfo(loc, me))
| lv is LocalValue => (QuickTipInfo(loc, lv))
| mm is IMember => (QuickTipInfo(loc, mm, manager))
- | st is StaticTypeVar => (QuickTipInfo(loc, st))
- | tv is TypeVar => (QuickTipInfo(loc, tv))
+ | st is StaticTypeVar => (QuickTipInfo(loc, st))
+ | tv is TypeVar => (QuickTipInfo(loc, tv))
| tc is TExpr.ImplicitValueTypeCtor => (QuickTipInfo(loc, tc.ty))
| fh is Typedtree.TFunHeader => (QuickTipInfo(loc, fh))
- | fp is Typedtree.TParameter => (QuickTipInfo(loc, fp))
+ | fp is Typedtree.TParameter => (QuickTipInfo(loc, fp))
| p is Pattern.Enum => (QuickTipInfo(loc, p.fld, manager))
+ | dv is TExpr.DefValIn when dv.name.Location.Contains(fileIndex, line, col)
+ => QuickTipInfo(loc, dv.name)
+ | TExpr.Call(func=TExpr.MethodRef(meth=IMethod(Name=name) as accessor))
+ when name.StartsWith("get_") || name.StartsWith("set_")
+ => (QuickTipInfo(loc, accessor, manager))
| null => (null)
| expr is TExpr => QuickTipInfo(loc, pObj, expr, manager)
#if DEBUG
View
8 ncc/typing/TyVarEnv.n
@@ -334,8 +334,10 @@ namespace Nemerle.Compiler
res.Location = t.Location;
- when (res.ParsedObject == null) //(t.TypedObject == null)
+ if (res.ParsedObject == null) //(t.TypedObject == null)
res.SetParsedObject(t); //t.TypedObject = res;
+ else
+ t.SetTypedObject(res);
res
}
@@ -500,8 +502,10 @@ namespace Nemerle.Compiler
res2.Location = tyexpr.Location;
- when (res2.ParsedObject == null) //(tyexpr.TypedObject == null)
+ if (res2.ParsedObject == null) //(tyexpr.TypedObject == null)
res2.SetParsedObject(tyexpr); //tyexpr.TypedObject = res2;
+ else
+ tyexpr.SetTypedObject(res2);
res2
}
View
16 ncc/typing/Typer.n
@@ -1601,8 +1601,20 @@ namespace Nemerle.Compiler
ReportFatal (messenger,
"ref and out parameters are only allowed in function calls")
- | PExpr.DefMutable (x, null) =>
- DoType (PExpr.DefMutable (x, <[ $(TExpr.DefaultValue (FreshTypeVar ()) : typed) ]>), expected, is_toplevel_in_seq);
+ | PExpr.DefMutable(x, null) =>
+ def res = DoType(PExpr.DefMutable(x, <[ $(TExpr.DefaultValue(FreshTypeVar()) : typed) ]>), expected, is_toplevel_in_seq);
+ match (x)
+ {
+ | PExpr.TypeEnforcement(n, ty) =>
+ def defVal = res :> TExpr.DefValIn;
+ def typeVar = (defVal.val :> TExpr.TypeConversion).target_type;
+
+ defVal.name.SetParsedObject(n);
+ typeVar.SetParsedObject(ty);
+
+ | _ => ()
+ }
+ res
| PExpr.DefMutable (PExpr.Ref as name, val)
| PExpr.Define (PExpr.Ref as name, val) =>
View
5 snippets/VS2010/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.Type.n
@@ -613,6 +613,11 @@ namespace Nemerle.Completion2
| fh is Typedtree.TFunHeader => (QuickTipInfo(loc, fh))
| fp is Typedtree.TParameter => (QuickTipInfo(loc, fp))
| p is Pattern.Enum => (QuickTipInfo(loc, p.fld, manager))
+ | dv is TExpr.DefValIn when dv.name.Location.Contains(fileIndex, line, col)
+ => QuickTipInfo(loc, dv.name)
+ | TExpr.Call(func=TExpr.MethodRef(meth=IMethod(Name=name) as accessor))
+ when name.StartsWith("get_") || name.StartsWith("set_")
+ => (QuickTipInfo(loc, accessor, manager))
| null => (null)
| expr is TExpr => QuickTipInfo(loc, pObj, expr, manager)
#if DEBUG

No commit comments for this range

Something went wrong with that request. Please try again.