Граф коммитов

246 Коммитов

Автор SHA1 Сообщение Дата
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