jfrijters
1e8df89fdc
Changed AssemblyClassLoader.FindLoadedClassImpl() to return generic types.
2013-02-19 19:42:32 +00:00
jfrijters
440bec32ad
Removed the special casing of generic type definition loading as we've since exposed the generic type definitions to Java.
2013-02-19 16:24:09 +00:00
jfrijters
f13a6f7496
Renamed ClassLoaderWrapper.GetLoadedClass() to FindLoadedClass().
2013-02-19 07:17:50 +00:00
jfrijters
0b4f9e7225
Emit a warning if a remapped type duplicates a loaded class.
2013-02-18 09:40:41 +00:00
jfrijters
cda49573c6
- Don't call EmitRemappedTypes2ndPass() unless we're compiling the core assemblies.
...
- Removed redundant casts.
2013-02-18 09:35:57 +00:00
jfrijters
223030b1a2
Copy zip file comment.
2013-02-18 08:59:00 +00:00
jfrijters
92c2bf05e0
Corrected indentation.
2013-02-18 08:41:22 +00:00
jfrijters
dcb6658e5f
Don't include empty classes.jar.
2013-02-18 08:39:37 +00:00
jfrijters
e000e21824
Add uncompilable classes loaded from the file system to classes.jar.
2013-02-18 08:34:31 +00:00
jfrijters
8b14cff75f
Changed ikvmc -recurse: option to give a fatal error if it matches no files.
2013-02-17 12:43:42 +00:00
jfrijters
eb16ab3bcf
- Split class name mapping and class parsing into separate loops to simplify dealing with duplicates.
...
- Made class name mapping compatible with runtime behavior.
- Give a warning if a class filename doesn't match the class name.
2013-02-17 10:57:35 +00:00
jfrijters
e1e8434943
Turns out we need to match the .class extension case senstive.
2013-02-17 10:07:54 +00:00
jfrijters
51831ca0b6
If a jar has multiple class entries with the same name, the last one wins. This mirrors the behavior of Java and dynamic mode.
2013-02-17 09:49:23 +00:00
jfrijters
25881c98c1
Project stub classes into the jar the classes originated from.
2013-02-17 09:35:25 +00:00
jfrijters
39ad0c5b68
- Unified the handling of resources and classes in ikvmc.
...
- Include all uncompilable .class files (from jars) into the resource jars.
2013-02-17 08:00:24 +00:00
jfrijters
c7c72d7a9d
- Merged two passes through the options.classes dictionary.
...
- Only skip "assembly" type if it contains annotations.
- Bug fix. Don't look for main method in excluded classes.
2013-02-17 06:58:37 +00:00
jfrijters
e2af047ed3
Suppress "class not found" warning for a classes that fails to compile for any reason (because we already give a warning about the primary cause).
2013-02-17 06:41:28 +00:00
jfrijters
4c39f456d5
Reordered using declarations and add using for sharpziplib.
2013-02-16 08:23:07 +00:00
jfrijters
501188311d
Unified all ikvmc filename validation.
2013-02-12 17:12:01 +00:00
jfrijters
fb09cd500d
- Made dynamic binding to unloadable types the default (for ikvmc).
...
- Added -static option to ikvmc to disable dynamic binding.
2013-02-12 14:49:46 +00:00
jfrijters
49ed4974be
Fixed previous commit. We can't add the suppress warning key if it already exists.
2013-02-12 13:41:44 +00:00
jfrijters
a8cabdedb4
- If a class can't be statically compiled due to a missing base class/interface, include it as a resource.
...
- Modified the assembly class loader to try to load classes from resources.
2013-02-12 12:33:07 +00:00
jfrijters
7212c798e3
Simplified resource option handling.
2013-02-12 12:27:07 +00:00
jfrijters
12a3e2d82c
Fix for bug #3604215 .
2013-02-12 11:25:21 +00:00
jfrijters
13bf875918
Removed obsolete stub class handling.
2013-02-12 07:52:08 +00:00
jfrijters
1434e9e70c
Made TypeWrapper.IsInternal a readonly property.
2013-02-06 19:31:10 +00:00
jfrijters
e0073288ac
Added CodeGenOptions.DisableDynamicBinding to disable dynamic binding, instead of conditional compilation.
2013-01-31 15:45:23 +00:00
jfrijters
84b74a6983
(Ab)use InternalsVisibleToAttribute to allow the runtime to dynamically inject classes into statically compiled assemblies.
2013-01-24 13:59:10 +00:00
jfrijters
f1ec727642
Added AttributeHelper.SetInternalsVisibleToAttribute().
2013-01-24 13:54:19 +00:00
jfrijters
2433855645
Suppress warnings after an error has occurred (to avoid obscuring the fact that compilation failed).
2013-01-16 09:49:01 +00:00
jfrijters
8add7277c9
Disabled automatic assembly loading for ikvmc. All dependencies must now be explicitly referenced (except for the stub jar loophole and secondary assemblies in a shared class loader group).
2013-01-15 15:33:50 +00:00
jfrijters
2823075d78
Corrected previous commit.
2013-01-15 15:19:52 +00:00
jfrijters
58ebc40a93
Handle MissingMemberException during FinishRemappedTypes.
2013-01-15 15:02:37 +00:00
jfrijters
0a155fdaad
Moved secondary assembly loading (from a shared class loader group) to an explicit step early in the compilation process. Referencing a secondary assembly is now an error, instead of a warning.
2013-01-15 14:55:50 +00:00
jfrijters
26d42a966b
Moved (legacy) stub class parsing from the guts of the class loader to an explicit upfront step.
2013-01-15 14:40:03 +00:00
jfrijters
f9abdd04cb
Officially deprecated compiling with stubs.
2013-01-08 14:47:50 +00:00
jfrijters
6d8828276c
Give the appropriate error messages if trying to extend or implement a missing type.
2013-01-08 07:07:07 +00:00
jfrijters
9190908938
Enabled resolving missing members and added a warning for missing types.
2013-01-07 12:19:56 +00:00
jfrijters
f0c3cca38a
- Bug fix. Deduplicate messages based on all parameter values, not just the first one.
...
- Allow messages to be suppressed based on any number of parameter values.
- Write fully specific -nowarn options to suppress file.
2013-01-07 10:54:55 +00:00
jfrijters
8fdeb2e7d5
- Support "attributes" attribute on method tag in map.xml for methods declared in remapped types.
...
- Recognize methods in remapped types with the "__<" name prefix as HideFromJava.
2012-12-30 11:20:15 +00:00
jfrijters
8a43584f72
Removed unnecessary MethodBuilder casts.
2012-09-13 15:19:35 +00:00
jfrijters
898696629a
Removed remaining ConstructorBuilder usages.
2012-09-13 13:21:35 +00:00
jfrijters
3994622a36
Removed dummy constructor from __Helper class.
2012-09-13 11:50:15 +00:00
jfrijters
a9b1ae47d6
Removed more ConstructorBuilder usage to fix regression (constructor custom attributes specified map.xml were not applied).
2012-09-11 12:00:46 +00:00
jfrijters
165abbec78
Removed unnecessary casting (now that we have a CodeEmitter.Emit() overload that takes a MethodBase).
2012-08-15 08:17:51 +00:00
jfrijters
0e1544a6e7
- Marked MemberWrapper class abstract.
...
- Marked all classes that don't (and shouldn't) have subclasses sealed.
2012-08-06 12:12:03 +00:00
jfrijters
b015884acb
- Made CodeEmitter more "type safe" by adding specific EmitXxx methods instead of following the more general ILGenerator pattern.
...
- Added some new optimizations to CodeEmitter (disabled unless experimental optimizations are enabled).
- Added some invariant checks to CodeEmitter to help debug optimizations (and document the invariants).
2012-07-03 14:45:51 +00:00
jfrijters
3cfa691e6b
More ikvmc error handling clean up.
2012-03-25 09:10:28 +00:00
jfrijters
be932e9ceb
Fix regression caused by previous commit. If we can't find the source and no -srcpath: option is specified, the debugging source path should be set to the source file attribute as-is.
2012-03-24 10:02:59 +00:00
jfrijters
bd00ad6a11
Added support to ikvmc to automatically set the full source path in the debugging info if the source file lives next to the .class file.
2012-03-24 08:54:12 +00:00