Commit Graph

1629 Commits

Author SHA1 Message Date
svtk 25d26fe6fd KT-235 Illegal assignment return type 2011-11-10 22:13:52 +04:00
svtk 89b4faa6fe started work on "unused value" analysis 2011-11-10 19:42:53 +04:00
svtk 7ef0debbc7 Merge remote-tracking branch 'origin/master' 2011-11-10 14:00:40 +04:00
svtk 1b8e5a4a11 Added return type check for non-local return (despite it is prohibited yet) 2011-11-10 14:00:32 +04:00
Stepan Koltsov abec6933cf KT-499 allow class object in static inner classes
like this:

===
class A {
    class object {
        class B {
            class object { }
        }
    }
}
===
2011-11-10 12:59:29 +04:00
Andrey Breslav a28716af1d Constant propagation guarded by the class jet.Number where the properties are defined.
NOTE: currently, local extension properties are not allowed, but they may be allowed in future versions, and the old propagation would break
2011-11-09 22:29:48 +03:00
Andrey Breslav c6f6f182b6 KT-353 Generic type argument inference sometimes doesn't work
KT-459 Type argument inference fails when class names are fully qualified
2011-11-09 22:15:37 +03:00
Andrey Breslav 8ab1f1b420 KT-287 Infer constructor type arguments
More test data
2011-11-09 21:51:01 +03:00
Andrey Breslav 0c492ae0eb KT-287 Infer constructor type arguments 2011-11-09 21:48:36 +03:00
Andrey Breslav a24e448973 Simplistic type inference:
KT-258 Support equality constraints in type inference
KT-399 Type argument inference not implemented for CALL_EXPRESSION
2011-11-09 19:52:05 +03:00
Andrey Breslav 787d3aa450 New type checking algorithm is used for subtyping constraint generation 2011-11-09 18:54:23 +03:00
Andrey Breslav d4ea1d42c8 CommonSupertypes factored out
equalTypes() moved to TypeUtils
Lower bounds (stub implementation) introduced to type parameters
2011-11-09 16:56:05 +03:00
Andrey Breslav 0a2ad80234 Unused parameter removed 2011-11-09 16:53:33 +03:00
svtk 0356bd98ec KT-411 Wrong type expected when returning from a function literal 2011-11-09 16:43:29 +04:00
Stepan Koltsov 099725da7f KT-449 class object in inner class must be an error
===
class A {
  class B {
    class object { }
  }
}
===
2011-11-09 16:26:12 +04:00
Stepan Koltsov a6898c7c64 simplify KT-249
for KT-449
2011-11-09 16:26:12 +04:00
Andrey Breslav df79fa2f3d Type checking procedure simplified (dramatically!) 2011-11-09 15:22:35 +03:00
Andrey Breslav a4768eda98 TypeInfo should be covariant. Consider the common case in Java when something wants, say, an annotation class. They write Class<? extends Annotation>. We can write just TypeInfo<Annotation> 2011-11-09 15:22:35 +03:00
Stepan Koltsov b1df4a0045 KT-419 Strange 'unresolved' bug when using constructor parameters that aren't properties
===
class A(w: Int) {
    var c = w
    {
        c = 17
    }
}
===
2011-11-09 14:51:04 +04:00
svtk 7c05e4b9b4 Merge remote-tracking branch 'origin/master' 2011-11-09 12:22:14 +04:00
svtk 2d6337fe93 KT-456 No check for obligatory return in getters 2011-11-09 12:22:08 +04:00
Alex Tkachman cfc41361ac expressions as functions 2011-11-08 22:45:48 +01:00
Dmitry Jemerov 30e44b1665 to avoid having the test name reset by UsefulTestCase.clearDeclaredFields(), mark it as final 2011-11-08 18:30:38 +01:00
Andrey Breslav 43dec762e0 description 2011-11-08 20:48:01 +03:00
svtk 24d663a08f KT-455 Do not repeat errors in definite assignment checks 2011-11-08 17:33:50 +04:00
Andrey Breslav 1cbee4b28f Merge remote branch 'origin/master' 2011-11-08 16:25:15 +03:00
Andrey Breslav f62b3f4a42 Trying to fix tests on Ubuntu agents 2011-11-08 16:23:44 +03:00
svtk dfb17a5f0e KT-58 Allow finally around definite returns 2011-11-08 16:25:04 +04:00
Stepan Koltsov f47f462dca KT-418: test for case when safe call on non-null value returns null
1?.somethingReturnNull()

must still yield null
2011-11-08 16:00:22 +04:00
Stepan Koltsov 1f511db31c KT-418 Make 1.?plus(2) have type Int 2011-11-08 15:44:02 +04:00
Stepan Koltsov 35275466bc KT-20 Resolve class objects' contents in the 'static' scope 2011-11-08 14:21:57 +04:00
Alex Tkachman 509ffb2fde refactoring of codegen contexts, and proper this/outer/super/receiver support 2011-11-08 11:11:42 +01:00
Andrey Breslav aa1ebbe445 JetCompilerManager (trivially) implements ProjectComponent 2011-11-08 13:05:11 +03:00
Andrey Breslav 14526a0263 KT-414 Hello world does not run if defined in an anonymous namesapce
+ getFQName moved out of a PSI class
2011-11-08 12:29:27 +03:00
Alex Tkachman fb41c3c9c0 debug info for parameters 2011-11-07 23:10:28 +01:00
Alex Tkachman ebc508a7b8 commented debug output 2011-11-07 22:42:52 +01:00
Andrey Breslav b15321b1bf Debug names of slices are written automatically 2011-11-07 22:46:16 +03:00
Andrey Breslav 00d65ebd8f KT-430 Quick info reports references to other files as Unresolved 2011-11-07 22:04:10 +03:00
Andrey Breslav c57ae34cf0 Assertion failure fixed on fixpoint generics loaded from Java 2011-11-07 20:16:09 +03:00
Andrey Breslav 3e59df95ef IndexOutOfBounds fixed 2011-11-07 20:16:09 +03:00
svtk 7d7d33b2ee KT-443 Write allowed to super.val 2011-11-07 19:49:32 +04:00
svtk 5adbd82557 Merge branch 'master' of ssh://git.labs.intellij.net/jet 2011-11-07 19:47:10 +04:00
Andrey Breslav 2c43bbd210 Merge remote branch 'origin/master' 2011-11-07 19:17:07 +03:00
Andrey Breslav d292b6bcfe KT-193: Guard primary constructor modifier list with a lookahead for LPAR 2011-11-07 19:16:40 +03:00
svtk c71d9796a2 improved processing of local declarations in cfg construction 2011-11-07 18:49:30 +04:00
Alex Tkachman 0b6dffb79b KT-446: wrong String.+= 2011-11-07 11:18:49 +01:00
svtk d1787a5f6e tests fixed 2011-11-07 13:31:52 +04:00
svtk 01785cf7bd Merge branch 'master' of ssh://git.labs.intellij.net/jet 2011-11-07 13:28:48 +04:00
Alex Tkachman f6deed26d0 enclosed super properties 2011-11-06 13:25:55 +01:00
Stepan Koltsov e1d94d2d0c fix LValueAssignment.jet test (unnecessary wrong overload) 2011-11-06 02:02:50 +04:00