jfrijters
82730f124b
- More filtering regression fixes.
...
- Synchronize on SyncRoot for Exception.Data collection access.
2010-05-28 05:36:03 +00:00
jfrijters
9085b75ad8
More clean up and added HideFromJava to two more Map methods.
2010-05-28 05:18:12 +00:00
jfrijters
85b418c2e9
- Util.mapException() shouldn't be HideFromJava as that would be a breaking change, and were explicitly filtering it from the stack trace anyway.
...
- Minor ExceptionHelper clean up.
2010-05-28 04:23:58 +00:00
jfrijters
b242c1026b
Moved ExceptionHelper into proper namespace and some cleanup.
2010-05-27 16:07:56 +00:00
jfrijters
2cbe4b732b
Moved the last part of ExceptionHelper from Java to C# side.
2010-05-27 15:24:29 +00:00
jfrijters
0d2012757f
Moved the remainder of the exception mapping to the C# side.
2010-05-27 14:54:41 +00:00
jfrijters
63fac84c10
- Added new public API to unmap exception (ikvm.runtime.Util.unmapException()).
...
- Moved (parts of) mapping and unmapping to C# side.
2010-05-27 14:08:58 +00:00
jfrijters
d67bc55267
Moved more ExceptionHelper methods to C# side.
2010-05-27 13:23:04 +00:00
jfrijters
fa0e1b04f0
Yet more ExceptionHelper moving.
2010-05-27 13:03:26 +00:00
jfrijters
fe0f5df2a1
Moved a few more ExceptionHelper methods to C# side.
2010-05-27 12:36:40 +00:00
jfrijters
4da8e27cf7
Moved printStackTrace to C# side.
2010-05-27 12:08:01 +00:00
jfrijters
d18d00788b
Moved ExceptionHelper.getStackTrace() to "native" code of Thread.
2010-05-27 11:47:41 +00:00
jfrijters
aae1ef7119
Added error message (instead of simply crashing) for the case when a native method is not found in managed code and there is no JNI assembly available (as is the case during the core library build).
2010-05-27 11:22:18 +00:00
jfrijters
a4500fdb47
Moved readObject/writeObject to C# side.
2010-05-27 11:21:23 +00:00
jfrijters
1dc4ffa32b
More object -> java.lang.Class updates.
2010-05-27 10:54:34 +00:00
jfrijters
40dcf95916
More type safety. TypeWrapper.ClassObject is now typed as java.lang.Class.
2010-05-27 09:25:15 +00:00
jfrijters
195f6ce2c6
First step of moving all exception handling code to C#.
2010-05-27 09:17:56 +00:00
jfrijters
36a5e0ce64
First stab at making the "native" method signatures more statically typed.
2010-05-27 09:17:13 +00:00
jfrijters
a3b30e87e1
Add a dummy IKVM.OpenJDK.Core.dll to the build to make it possible to use core types in method signatures during first-pass build of IKVM.Runtime.dll.
2010-05-27 08:38:48 +00:00
jfrijters
12a597a359
When we're statically compiling, register the TypeBuilder -> TypeWrapper early on, to support cyclic dependency compilation.
2010-05-27 08:31:46 +00:00
jfrijters
44e6663f50
Wrap all reflective field access to convert FieldAccessException into java.lang.IllegalAccessException.
2010-05-26 13:09:55 +00:00
jfrijters
6deb604258
Turn MethodAccessExceptions that happen during reflective method invocation (in partial trust scenarios) into java.lang.IllegalAccessExceptions.
2010-05-26 10:12:13 +00:00
jfrijters
97b0466c35
Workaround x64 JIT bug.
2010-05-26 10:07:07 +00:00
jfrijters
4184d2c165
Added explicit cast to generated reflection argument conversion code, to improve partial trust compatibility and to avoid an x64 JIT bug.
2010-05-26 09:50:48 +00:00
jfrijters
fd4d23369a
When a fast method/constructor invoker throws an exception at the call site (e.g. MethodAccessException in partial trust scenarios) we shouldn't wrap it in an InvocationTargetException.
2010-05-26 05:42:56 +00:00
jfrijters
f1bffde708
Handle the case where the exception block ends at the end of the method (scala compiler generates code like this).
2010-05-21 13:38:46 +00:00
jfrijters
5cc1b2e805
The AssemblyClassLoader should not claim to be able to load .class resources for dynamically loaded classes.
2010-05-21 06:25:06 +00:00
jfrijters
b23c32c007
Store the generic metadata in a more robust format. The previous format was broken as it created a dependency between the number of methods in class file and in our internal representation (which doesn't alway match, because we add a.o. miranda methods). This fixes several Guice 2.0 test failures as reported by bug #3004682 .
2010-05-21 04:23:40 +00:00
jfrijters
1bf158bf1d
Class.getEnclosingMethod0() and Class.getGenericSignature() should finish the TypeWrapper, otherwise the metadata isn't yet available.
...
In addition, getGenericSignature() should not re-mangle the sig as that is not necessary.
This fixes several Guice 2.0 test case failures as reported in bug #3004682 .
2010-05-21 04:21:55 +00:00
jfrijters
5aa745c75f
Made specialized GetModifiers() variant reuse common GetModifiers() method.
2010-05-20 12:37:00 +00:00
jfrijters
92336d8fc7
Consolidated a couple of attribute helper overloads by using MemberInfo instead of specific sub types.
2010-05-20 12:16:27 +00:00
jfrijters
6207754bd9
Use __GetCustomAttributes() instead of doing our own attribute filtering.
2010-05-20 09:43:15 +00:00
jfrijters
d029e87abc
We don't need to use our own version of IsDefined to test for custom attributes, because there is no confusion about what runtime types to use anymore.
2010-05-20 06:00:48 +00:00
jfrijters
481158d99b
Added Types.SecurityAttribute.
2010-05-20 05:39:53 +00:00
jfrijters
75398c1efe
Use Types.IsVolatile instead of re-importing.
2010-05-20 05:36:37 +00:00
jfrijters
f8614df7c9
Fixed ikvmc/ikvmstub regression introduced with the switch to IKVM.Reflection (not IKVM.Reflection.Emit) in volatile field handling acros assemblies.
2010-05-20 05:34:31 +00:00
jfrijters
71ea18a0dc
Removed JVM.GetType().
2010-05-20 04:59:13 +00:00
jfrijters
f570d2c719
Allow ikvmstub to explicitly set the bootstrap class loader.
2010-05-19 15:46:27 +00:00
jfrijters
c676fb0ebc
It's not necessary to add the bootstrap class loader to the generic class loader key.
2010-05-19 15:45:25 +00:00
jfrijters
028b02bc06
Implemented a more reliable test for .NET types that have a Finalize method and extend our implementation helpers (i.e. java.lang.Object or java.lang.Throwable). The previous test only handled java.lang.Object.
2010-05-19 15:40:37 +00:00
jfrijters
8c526e9001
Removed .NET 1.1 restriction workaround.
2010-05-19 15:20:36 +00:00
jfrijters
999be08e21
MethodWrapper types need to be provided, as there is no link step for DotNetTypeWrapper members.
2010-05-19 15:16:02 +00:00
jfrijters
44a7beac75
For compiled Java types we can safely use GetWrapperFromType() to get the name and this also fixes the case where the type is a fake type.
2010-05-19 09:12:45 +00:00
jfrijters
a7e391870a
Added "documentation" assert.
2010-05-19 09:11:50 +00:00
jfrijters
b5625e2153
Changed StaticCompiler.GetType() to be multi-target aware. Instead of looking thru all assemblies currently loaded, only the relevant referenced assemblies are searched.
...
Note that this is a (minor) breaking change. Types referenced in -remap:map.xml file are now only resolved against directly referenced assemblies.
2010-05-16 06:31:20 +00:00
jfrijters
953fa3bbc3
We can't rely on System.dll being loaded. EditorBrowsableAttribute needs to be explicitly imported.
2010-05-15 09:28:29 +00:00
jfrijters
c5641ac723
Added a couple of checks to avoid problems when user code tries to convert .NET types that aren't supported into a Class.
2010-05-10 04:47:34 +00:00
jfrijters
183c9e66d8
Fixed EnumHelper.GetPrimitiveValue() to handle the case where the underlying type of an enum difference from the constants values attached to the fields.
2010-05-10 04:46:45 +00:00
jfrijters
3a314584f8
A generic type instance is loaded by the assembly class loader of the generic type definition, but it should not be registered there (as this causes name clashes and that class loader isn't reported as it's loader anyway), it should be registered by the generic class loader that it is associated with.
2010-05-10 04:45:49 +00:00
jfrijters
f6717df18f
Added warning to ikvmc when StructLayoutAttribute is ignored.
2010-05-07 05:53:33 +00:00