[nem-bug] [Nemerle 0000897]: ICE on "int.ToString ()"

feedback at nemerle.org feedback at nemerle.org
Tue Mar 27 20:16:38 CEST 2007


The following issue has been set as RELATED TO issue 0000857.
======================================================================
<http://nemerle.org/bugs/view.php?id=897> 
======================================================================
Reported By:                nikov
Assigned To:                
======================================================================
Project:                    Nemerle
Issue ID:                   897
Category:                   Compiler
Reproducibility:            always
Severity:                   minor
Priority:                   low
Status:                     new
======================================================================
Date Submitted:             02-14-2007 11:39 CET
Last Modified:              03-27-2007 20:16 CEST
======================================================================
Summary:                    ICE on "int.ToString ()"
Description: 
	public class Class1
	{
	    public Foo() : void {
	        int.ToString();
	    }
	}

Error: internal compiler error: got some unknown exception of type
System.InvalidCastException: Unable to cast object of type 'Fun' to type
'Class'.
		   at Nemerle.Compiler.Typer2.DoWalk(Context ctx, TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 864
		   at Nemerle.Compiler.Typer2.Walk(Context ctx, TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 123
		   at Nemerle.Compiler.Typer2.Walk(TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 107
		   at Nemerle.Compiler.Typer2.DoWalk(Context ctx, TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 970
		   at Nemerle.Compiler.Typer2.Walk(Context ctx, TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 123
		   at Nemerle.Compiler.Typer2.DoWalk(Context ctx, TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 1120
		   at Nemerle.Compiler.Typer2.Walk(Context ctx, TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 123
		   at Nemerle.Compiler.Typer2.Walk(TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 107
		   at Nemerle.Compiler.Typer2.DoWalk(Context ctx, TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 1289
		   at Nemerle.Compiler.Typer2.Walk(Context ctx, TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 123
		   at Nemerle.Compiler.Typer2.DoWalk(Context ctx, TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 1340
		   at Nemerle.Compiler.Typer2.Walk(Context ctx, TExpr expr) in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 123
		   at Nemerle.Compiler.Typer2.Run() in
C:\Nemerle\Compiler\ncc\typing\Typer2.n:line 98
		   at Nemerle.Compiler.Typer.RunSecondPass(MethodBuilder meth) in
C:\Nemerle\Compiler\ncc\typing\Typer.n:line 367
		   at Nemerle.Compiler.Typer..ctor(MethodBuilder m) in
C:\Nemerle\Compiler\ncc\typing\Typer.n:line 168
		   at
Nemerle.Compiler.CompilerComponentsFactory.CreateTyper(MethodBuilder m) in
C:\Nemerle\Compiler\ncc\misc\ComponentsFactory.n:line 33
		   at Nemerle.Compiler.MethodBuilder.RunBodyTyper() in
C:\Nemerle\Compiler\ncc\hierarchy\ClassMembers.n:line 811
		   at Nemerle.Compiler.MethodBuilder.Compile() in
C:\Nemerle\Compiler\ncc\generation\HierarchyEmitter.n:line 972
		   at Nemerle.Compiler.TypeBuilder.EmitImplementation() in
C:\Nemerle\Compiler\ncc\generation\HierarchyEmitter.n:line 564
		   at
Nemerle.Compiler.TypesManager._N_emit_impl_36087.apply_void(TypeBuilder
_N_36086) in C:\Nemerle\Compiler\ncc\generation\HierarchyEmitter.n:line
316
		   at
Nemerle.Compiler.TypesManager._N_maybe_f_36693.apply_void(TypeBuilder
_N_36692) in C:\Nemerle\Compiler\ncc\hierarchy\TypesManager.n:line 225
		   at Nemerle.Collections.List.Iter['a](list`1 l, FunctionVoid`1 f) in
C:\Nemerle\Compiler\lib\list.n:line 906
		   at Nemerle.Core.list`1.Iter(FunctionVoid`1 f) in
C:\Nemerle\Compiler\lib\list.n:line 307
		   at Nemerle.Compiler.TypesManager.Iter(list`1 builders, FunctionVoid`1
f) in C:\Nemerle\Compiler\ncc\hierarchy\TypesManager.n:line 231
		   at Nemerle.Compiler.TypesManager.Iter(FunctionVoid`1 f) in
C:\Nemerle\Compiler\ncc\hierarchy\TypesManager.n:line 242
		   at Nemerle.Compiler.TypesManager.compile_all_tyinfos(Boolean
aux_phase) in C:\Nemerle\Compiler\ncc\generation\HierarchyEmitter.n:line
340
		   at Nemerle.Compiler.TypesManager._N__N_l35520_35623.apply_void() in
C:\Nemerle\Compiler\ncc\generation\HierarchyEmitter.n:line 205
		   at Nemerle.Compiler.Solver.Enqueue(FunctionVoid action) in
C:\Nemerle\Compiler\ncc\typing\Solver.n:line 197
		   at Nemerle.Compiler.TypesManager.EmitDecls() in
C:\Nemerle\Compiler\ncc\generation\HierarchyEmitter.n:line 204
		   at Nemerle.Compiler.ManagerClass.Run() in
C:\Nemerle\Compiler\ncc\passes.n:line 432
		   at Nemerle.CommandlineCompiler.MainClass.main_with_catching() in
C:\Nemerle\Compiler\ncc\main.n:line 86
======================================================================
Relationships       ID      Summary
----------------------------------------------------------------------
related to          0000857 Internal  Compiler Error
======================================================================

----------------------------------------------------------------------
 divan - 03-24-07 08:19 
----------------------------------------------------------------------
This code is interpreted as (int..ctor).ToString ().
And currently there is no object wrap for value-type ctors (and other
methods i suppose).

So there are such issues:
1) ICE on that example
2) unable to write reference to "value-type method"
3) no object wraps for "value-type methods/ctors"
4) And one more, compiling the throwing code:
def f = int; //it's def f = void -> int ()
f.ToString (); //null reference exception

Issue History
Date Modified  Username       Field                    Change              
======================================================================
02-14-07 11:39 nikov          New Issue                                    
03-24-07 08:19 divan          Note Added: 0001827                          
03-24-07 08:19 divan          Summary                  ICE if instance method
called in static context => ICE on \"int.ToString ()\"
03-24-07 08:19 divan          Description Updated                          
03-27-07 20:16 divan          Relationship added       related to 0000857  
======================================================================




More information about the bugs mailing list