bugDotGNU Portable.NET - Bugs: bug #2675, ILASM .custom (*typecast*)...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #2675: ILASM .custom (*typecast*) instance void Class::.ctor (valuetype)

Submitted by:  James Michael DuPont <mdupont>
Submitted on:  Fri 28 Feb 2003 10:06:53 AM UTC  
 
Category: NoneSeverity: 3 - Normal
Item Group: NoneStatus: Fixed
Privacy: PublicAssigned to: None
Open/Closed: Closed

Mon 10 Mar 2003 11:46:18 AM UTC, comment #3:

The reason why it gives you an error is the backslash on
line 9, which is invalid assembly code. I am unable to
find any way to produce the backslash from ildasm. I
suspect that this is an editing error in your test case.

Rhys Weatherley <rweather>
Project Administrator
Mon 10 Mar 2003 11:22:32 AM UTC, comment #2:

Here is another test case (from pnet 0.490)
i cannot access cvs right now.
//test6.il:9: parse error, unexpected $undefined, expecting "::"
.class test
{
.method public static pinvokeimpl(/* No map */)
void modopt([mscorlib]System.Runtime.CompilerServices.CallConvThiscall)
exception.__dtor(valuetype exception/* 02000020 / modopt([Microsoft.VisualC/* 23000002 /]Microsoft.VisualC.IsConstModifier/ 01000009 /) modopt([Microsoft.VisualC/ 23000002 /]Microsoft.VisualC.IsConstModifier/ 01000009 */) A_0) native unmanaged preservesig
// SIG: 00 01 20 21 01 20 25 20 25 0F 11 80 80
{
.custom /0C000074:0A000008/ instance void [mscorlib]System.Security.SuppressUnmanagedCodeSecurityAttribute\/* 01000013 /::.ctor() / 0A000008 */ = ( 01 00 00 00 )
}
}

James Michael DuPont <mdupont>
Sat 01 Mar 2003 12:47:52 AM UTC, comment #1:

Fix committed - 1 Mar 2003

Rhys Weatherley <rweather>
Project Administrator
Fri 28 Feb 2003 10:06:53 AM UTC, original submission:

Summary :
ILASM .custom (typecast) instance void Class::.ctor (valuetype)

This is the test case created from the microsofts ildasm,
Reported to the list :
http://www.dotgnu.info/pipermail/developers/2003-February/009977.html

Modified from this code here :
ftp://ftp.mercury.cs.mu.oz.au/pub/mercury/dotgnu_test/mercury_dotnet_hello_ildasm/construct__cpp_code.dll.ild

[[
.namespace test
{
.class AssemblyAttributesGoHereSM {}
.class SecurityPermissionAttribute {}
.class SecurityAction {}
.custom (AssemblyAttributesGoHereSM ) instance void
SecurityPermissionAttribute::.ctor (valuetype ) = ( 01 00 08 00 00 00
01 00 54 02 10 53 6B 69 70 56 )
} // end of namespace mercury.construct__cpp_code

.namespace test
{
.class AssemblyAttributesGoHereSM {}
.class SecurityPermissionAttribute {}
.class SecurityAction {}
.custom (AssemblyAttributesGoHereSM ) instance void
SecurityPermissionAttribute::.ctor (valuetype ) = ( 01 00 08 00 00 00
01 00 54 02 10 53 6B 69 70 56 )
} // end of namespace mercury.construct__cpp_code

----------------------------------------------
error message is
----------------------------------------------
test1.cs:6: parse error, unexpected '('

This however works
.custom instance void SecurityPermissionAttribute::.ctor () = (00 00 00)

This does not work, the typecast :
// .custom (AssemblyAttributesGoHereSM ) instance void SecurityPermissionAttribute::.ctor () = (00 00 00)

This does not work, the valuetype :
// .custom instance void SecurityPermissionAttribute::.ctor (valuetype) = (00 00 00)

mike

James Michael DuPont <mdupont>

 

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

Do you think this task is very important?
If so, you can click here to add your encouragement to it.
This task has 0 encouragements so far.

Only logged-in users can vote.

 

Please enter the title of George Orwell's famous dystopian book (it's a date):

 

 

Follow 2 latest changes.

Date Changed By Updated Field Previous Value => Replaced By
Sat 01 Mar 2003 12:47:52 AM UTCrweatherStatusNone=>(Error - Not Found)
  Open/ClosedOpen=>(Error - Not Found)

Back to the top


Powered by Savane 3.1-cleanup1