Commit Graph

1835 Commits

Author SHA1 Message Date
Andrey Breslav 83de1581ca Trust your spell-checker: it's "overridden" 2012-04-27 10:47:28 +04:00
Andrey Breslav 227d50945c Cleanup 2012-04-27 10:43:14 +04:00
Andrey Breslav 1795ca9830 Unnecessary casts removed 2012-04-27 10:29:52 +04:00
Andrey Breslav b1627e3897 Provide separate access to declared callable members as opposed to all callable members
All callable members contain "fake overrides", declared don't
2012-04-27 00:05:31 +04:00
Andrey Breslav 5f75be6253 No need to expose this scope as writable 2012-04-26 23:58:36 +04:00
Andrey Breslav 058e4b833b Checks for default parameter value consistency
Inheriting default values from multiple superclasses is prohibited
2012-04-26 17:33:16 +04:00
Andrey Breslav 07c5f8e12a MutableClassDescriptor.getCallableDescriptors() now includes "fake overrides"
Otherwise, it was necessary to call getAllDescriptors() on the member scope, which seems like a bad idea.
Adjustments have been made to the client code, to exclude "fake overrides" from irrelevant checks.
2012-04-26 17:33:16 +04:00
Andrey Breslav 3a56b7905d Default parameter values are not allowed in overriding functions 2012-04-26 17:33:15 +04:00
Andrey Breslav 136b07e7e1 Introduced the notion of "overriding" for value parameters
Example:

trait A {
  fun foo(a : Int)
}

class B : A {
  override fun foo(a : Int) {}
}

B.foo.a overrides A.foo.a
2012-04-26 17:33:15 +04:00
Nikolay Krasko 800f289ba3 Some new icons - kotlin file icon 2012-04-26 13:50:37 +04:00
pTalanov 9f92b0b5d7 Refactor cli: all the jvm stuff goes under org.jetbrains.jet.cli.jvm, common stuff under org.jetbrains.jet.cli.common 2012-04-25 20:39:44 +04:00
pTalanov d0d5b147f2 Refactor cli: all the jvm stuff goes under org.jetbrains.jet.cli.jvm, common stuff under org.jetbrains.jet.cli.common 2012-04-25 20:19:15 +04:00
Stepan Koltsov 3b43f30824 add JDK to CompilerDependencies 2012-04-25 19:36:22 +04:00
Stepan Koltsov c9edaa6b4f do not add annotations.jar to compiler classpath 2012-04-25 18:48:14 +04:00
Pavel V. Talanov 6e3d7cce61 Remove redundant analyzer wrapper. 2012-04-25 14:24:05 +04:00
Pavel V. Talanov 891dd9fc1c extract compiler error reporting functionality from KotlinToJVMBytecodeCompiler 2012-04-25 14:24:04 +04:00
Andrey Breslav d0bd5cf9c6 Properly positioning compilation exceptions in the IDE 2012-04-25 12:25:00 +04:00
Andrey Breslav 3eb6b3d0f5 Formatting 2012-04-25 12:20:27 +04:00
Andrey Breslav 47e096026d Escape XML strings in the compiler output 2012-04-24 22:41:04 +04:00
Stepan Koltsov 4a1c36d733 fix complex case of recursion in JavaDescriptorResolver
#KT-1804
2012-04-24 22:14:01 +04:00
Stepan Koltsov 0f3aa9e567 remove nop code 2012-04-24 22:14:00 +04:00
Stepan Koltsov ae913f4c0e replace assert with exception
* assert hides errors when code is executed without -ea
* it is easier to set up breakpoint
2012-04-24 22:14:00 +04:00
Andrey Breslav c686184847 KT-1860 Resolve annotations of function parameters
#KT-1860 Fixed
2012-04-24 21:53:23 +04:00
Andrey Breslav b467edfa03 Don't compile module scripts in verbose mode 2012-04-24 21:22:46 +04:00
Andrey Breslav 0ab212b240 Module file is not needed when compiling modules 2012-04-24 21:22:45 +04:00
Andrey Breslav 8a40f943de Module script loading separated from module compilation 2012-04-24 21:22:45 +04:00
Andrey Breslav 419f8c7415 Print a root tag in the XML output mode
Now, the compiler output in the "-tags" mode is enclosed into <MESSAGES>...</MESSAGES>
2012-04-24 21:22:45 +04:00
Evgeny Gerashchenko cc7284c67e Fixed failed assertions on navigating to 'Assertions' class of Kotlin runtime 2012-04-24 17:50:57 +04:00
Andrey Breslav 993bf65087 Providing reasonable information about compilation exceptions
Self message, cause message and both position in the file under compilation and the executed file position are reported
2012-04-23 19:17:35 +04:00
Nikolay Krasko d9b04edcf8 EA-34996 Old assert that is difficult to maintain 2012-04-23 17:59:04 +04:00
Andrey Breslav 789ff0b273 KT-1838 Constructor with a vararg
Resolution for properties declared as primary constructor parameters used to ignore the varargs annotation.
 #KT-1838 Fixed
2012-04-23 14:16:07 +04:00
Leonid Shalupov 32a55f786c integration tests: temp dir, stable test output 2012-04-22 23:10:49 +04:00
Leonid Shalupov 40e594668b integration tests: compile and run hello app 2012-04-22 22:54:13 +04:00
Leonid Shalupov 22d601ffcb integration tests draft 2012-04-22 22:38:36 +04:00
Stepan Koltsov 75255aebdc use BufferedOutputStream when building jar
it speeds up building (from 3% to 1% in CompileCompilerDependenciesTest)
2012-04-21 18:03:57 +04:00
Stepan Koltsov 7c8937bd2d JavaDescriptorResolver: negative package cache
Time spent in JavaDescriptorResolver.resolveNamespace reduced from 10% to 5%
in CompileCompilerDependenciesTest
2012-04-21 18:03:53 +04:00
Evgeny Gerashchenko 82b4304f0e Added auto-importing in JetChangePropertyActions.addTypeAnnotation(). It is used in "specify type explicitly" intention and "introduce variable" refactoring. Corrected auto-importing for cases of nested classes (e.g. Map.Entry). 2012-04-21 02:39:23 +04:00
Evgeny Gerashchenko e298391645 Fixed tests.
#KT-1799 fixed
2012-04-20 22:16:20 +04:00
Evgeny Gerashchenko 7147998c5c Replaced "namespace header" with "package directive" in parser error.
#KT-1799 fixed
2012-04-20 22:02:28 +04:00
Evgeny Gerashchenko 9bec7b5e9d Merge branch 'diagnostics'
Conflicts:
	compiler/cli/src/org/jetbrains/jet/compiler/CompileSession.java
	compiler/frontend/src/org/jetbrains/jet/lang/diagnostics/Errors.java
2012-04-20 21:58:05 +04:00
Stepan Koltsov 3b0c9244c9 di: @PreDestroy
I need in my private experiments
2012-04-20 21:33:18 +04:00
Stepan Koltsov 994e6fe009 di: store everything in fields
needed to implement @PreDestroy
2012-04-20 21:33:17 +04:00
Stepan Koltsov 092a572143 do not compile java part of runtime
it must be already compiled by Idea
2012-04-20 21:33:17 +04:00
Evgeny Gerashchenko 0f0330a4b4 Added rendering vararg keywords and valid parameter type in this case.
#KT-1840 fixed
2012-04-20 20:44:09 +04:00
Evgeny Gerashchenko 9a3af476e5 Implemented getDiagnostics() in BindingContext returned by DelegatingBindingTrace. 2012-04-20 20:44:09 +04:00
Evgeny Gerashchenko 90ac45f3f9 Added extra space after function type arguments list in DescriptorRenderer. Added test. 2012-04-20 20:44:08 +04:00
Evgeny Gerashchenko 1f7c435a24 Removed val/var soft keywords in renderer for functions 2012-04-20 20:44:08 +04:00
Andrey Breslav a31edfc3bd KT-1835 cannot call a Java API which has a method from(String) and from(String...)
The problem was in the "more specific" relation, that didn't pay enough attention to varargs.
The correct behavior is in the spirit of JLS 15.12.2 (as of Java 5):
 * a fixed-arity function always wins over a variable-arity functions
 * if two vararg functions are compared, their parameters are checked for subtyping.
  In the latter case, the candidates may have different number of formal parameters, so we
  compare the matching parts and then check the rest against the vararg parameter.

 #KT-1835 Fixed
2012-04-20 20:00:41 +04:00
Andrey Breslav 45a0873afa KT-1835 cannot call a Java API which has a method from(String) and from(String...)
The problem was in the "more specific" relation, that didn't pay enough attention to varargs.
The correct behavior is in the spirit of JLS 15.12.2 (as of Java 5):
 * a fixed-arity function always wins over a variable-arity functions
 * if two vararg functions are compared, their parameters are checked for subtyping.
  In the latter case, the candidates may have different number of formal parameters, so we
  compare the matching parts and then check the rest against the vararg parameter.

 #KT-1835 Fixed
2012-04-20 19:10:10 +04:00
Andrey Breslav da474b961f Detailed status for ValueArgumentsToParameterMapper
When a non-vararg parameter gets spread with a '*' in front of it, a "weak error" is returned.
A candidate with a weak error in parameter matching is type-checked, but not successful.
2012-04-20 19:10:10 +04:00