jfrijters
ff3cadecc8
Implemented type annotation reflection for statically compiled classes.
2014-06-05 12:38:09 +00:00
jfrijters
3828b7df57
Implemented type annotation reflection for dynamically loaded classes.
2014-06-05 11:08:57 +00:00
jfrijters
9e6bf6305d
Simplified AnnotationType meta annotation handling.
2014-06-04 14:32:09 +00:00
jfrijters
3f9c1d2c13
Fixed .NET type method parameter reflection to handle methods with parameters without names.
2014-06-04 06:45:15 +00:00
jfrijters
9ed1f5b3fc
Match OpenJDK handling of invalid MethodParameters attribute.
2014-06-03 14:28:37 +00:00
jfrijters
4d85824d25
Added parameter reflection for Invoke method on (fake) delegate nested interface.
2014-06-03 13:13:15 +00:00
jfrijters
8140d88a82
Added (undocumented) -noparameterreflection option ikvmc to disable emitting method parameter reflection metadata, because we want to javac compile core class library with the -parameters option (to get the parameter names of native and abstract methods), but we don't want the reflection info (because the JDK doesn't include it either).
2014-06-03 12:42:19 +00:00
jfrijters
fed788b465
- Enabled MethodParameter rendering in runtime stub generator.
...
- Support round tripping malformed MethodParameter attribute in stub generator.
- Use new general method parameter interface in ikvmstub.
- Added support for method parameter reflection on .NET types.
2014-06-03 12:04:41 +00:00
jfrijters
6783aafb89
Added support for MethodParameters in statically compiled classes.
2014-06-03 09:13:56 +00:00
jfrijters
f8c6a31499
Implemented method parameter reflection for dynamically loaded classes.
2014-06-03 07:15:52 +00:00
jfrijters
d3c1625fed
Malformed MethodParameters attribute should not throw ClassFormatError.
2014-06-03 07:14:04 +00:00
jfrijters
dfdf02bbe5
Fixed PackageListAttribute to be ECMA compliant.
2014-06-02 13:25:40 +00:00
jfrijters
7330021382
JNI fixes:
...
- Throw(NULL) should not clear pending exception.
- ThrowNew(..., NULL) should use default constructor.
2013-10-25 08:44:25 +00:00
jfrijters
b915417f4e
Bug fix. JNI NewStringUTF should accept null pointer.
2013-10-24 07:51:27 +00:00
jfrijters
327403a4b4
Improved handling of missing types (from missing assemblies in ikvmc).
2013-10-20 12:12:48 +00:00
jfrijters
28a71e6c1a
Fixed method handle custom invoke to downcast the return type. Without the cast .NET 4.0 would throw a verification exception.
2013-10-20 10:54:23 +00:00
jfrijters
324dbccb30
Avoid reflection in creating ConditionalWeakTable value objects. Thanks to Michael Bayne for the idea.
2013-10-20 09:45:09 +00:00
jfrijters
6e162a2443
Previous commit broke the build.
2013-10-20 09:31:24 +00:00
jfrijters
b5ae9f0195
Fixed handling of annotations with invalid type signatures.
2013-10-20 08:52:45 +00:00
jfrijters
2ba0163cdb
Improved handling of missing types (from missing assemblies in ikvmc).
2013-10-19 12:45:50 +00:00
jfrijters
86c89421e9
Rewrote InstructionState.PopTypeImpl() to be actually understandable.
2013-10-19 08:42:15 +00:00
jfrijters
9c74c1cc87
Deduplicate code between InstructionState and StackState.
2013-10-19 07:38:02 +00:00
jfrijters
cc7359f8b5
Improved trace message for JNI loadLibrary failure.
2013-10-13 06:49:20 +00:00
jfrijters
ba704f1ad4
Fix for bug #282 . A potential fault block can't throw an exception from another fault block.
2013-09-24 07:24:35 +00:00
jfrijters
80e7cbf27a
Fixed race condition in MethodWrapper.ResolveMethod().
2013-09-13 12:11:36 +00:00
jfrijters
2b14c1ddab
Bug fixes:
...
- If an annotation is of a type that is not an annotation, it should be ignored.
- Annotations that contain no longer existing values should not fail, but just ignore the value.
- Class or enum values in annotations that refer to non-existing types should use TypeNotPresentExceptionProxy as the value, instead of failing to create the annotation.
- Emulate some JDK bugs.
- If an annotation value is of the wrong type, use AnnotationTypeMismatchExceptionProxy as the value, instead of failing to create the annotation.
2013-09-02 12:56:16 +00:00
jfrijters
4ef7be6d74
Bug fixes.
...
- If an annotation's type does not exist, the annotation should be ignored instead of throwing an exception.
- If an annotation is (no longer) RetentionPolicy.RUNTIME it should not be returned.
2013-09-02 12:53:04 +00:00
jfrijters
251d3053d9
Moved annotation decoding loop into method.
2013-09-02 12:47:57 +00:00
jfrijters
d5e3204070
If an annotation is inconsistent with the annotation type, we should still record it as a dynamic annotation.
2013-09-02 12:44:15 +00:00
jfrijters
fd37f3de15
Merged 7u40 changes in sun/nio/ch/Net.java and partially merged DatagramChannelImpl.java.
2013-08-15 16:25:09 +00:00
jfrijters
05c7458e42
Updated Throwable.initCause() and Throwable.addSuppressed() exceptions to match OpenJDK 7u40.
2013-08-13 14:24:15 +00:00
jfrijters
ce255f3f52
Unforked:
...
-sun/awt/image/ByteComponentRaster.java
-sun/awt/image/BytePackedRaster.java
-sun/awt/image/IntegerComponentRaster.java
-sun/awt/image/OffScreenImageSource.java
-sun/awt/image/ShortComponentRaster.java
2013-08-13 12:15:39 +00:00
jfrijters
1509176ca1
Merged in OpenJDK changes.
2013-08-13 11:27:03 +00:00
jfrijters
3c0a730167
Added ikvmstub -parameters option to add parameter names to stub classes.
2013-08-12 09:02:13 +00:00
jfrijters
5befcded8a
Switched from @HasCallerID to @CallerSensitive and merged CallerSenstive related 7u40 changes.
2013-08-12 07:55:55 +00:00
jfrijters
938206e2a3
Moved parameter name and annotation handling into a separate method.
2013-08-08 06:15:47 +00:00
jfrijters
9201af77c0
Added optimization to omit InnerClassesAttribute to record reflective modifiers when we can predict them.
2013-08-07 12:15:18 +00:00
jfrijters
c23b753f13
Added optimization to omit ImplementAttribute in some cases.
2013-08-07 09:26:23 +00:00
jfrijters
f49d9c8c00
Don't store class name in EnclosingMethodAttribute if we can use the DeclaringType.
2013-08-07 06:46:28 +00:00
jfrijters
93ab42d81f
Minor clean up of CompiledTypeWrapper.InnerClasses.
2013-08-07 06:24:59 +00:00
jfrijters
71193b82e8
Compile anonymous and local classes as nested types.
2013-08-07 06:16:48 +00:00
jfrijters
bf04f25dc0
Renamed field and two locals to prepare for patch to compile enclosed classes as nested types.
2013-08-06 14:52:26 +00:00
jfrijters
0a430cd473
- Renamed GetInnerClassName() to AllocNestedTypeName().
...
- Use StringComparison.Ordinal when checking inner vs outer class names.
2013-08-06 12:45:10 +00:00
jfrijters
19c7daaf38
Don't add SourceFileAttribute for inner classes if the name matches the outer class.
2013-08-06 12:11:26 +00:00
jfrijters
4424e7c316
Bug fix. Non-blocking SocketChannel read/write with array of ByteBuffer would throw exception instead of returning 0 bytes read/written when no more buffer space is available.
2013-08-05 15:38:42 +00:00
jfrijters
b3c1f607be
Allow Java 8 classes to use invokeStatic method handle constants that refer to InterfaceMethodref.
2013-08-05 12:47:14 +00:00
jfrijters
d6de054ef4
Allow private interface methods (but not yet implemented).
2013-08-05 11:52:59 +00:00
jfrijters
4d6698f898
Change class format error exception message for missing Code attribute to same text as OpenJDK.
2013-08-05 11:48:37 +00:00
jfrijters
47f221a0d1
Moved adding InnerClassAttribute to separate method.
2013-07-30 21:54:58 +00:00
jfrijters
a9edb3e3e1
Tiny clean up.
2013-07-30 20:15:48 +00:00