Commit Graph

182 Commits

Author SHA1 Message Date
Alexander Udalov dce64c974f Don't output error for "kotlinc -version"
#KT-9676 Fixed
2015-11-05 15:13:19 +03:00
Ilya Gorbunov f20bfa7fb8 Fix test expectation failures caused by changed signatures. 2015-11-04 22:19:45 +03:00
Mikhail Glukhikh 4b6cb3ebce A new kind of synthetic accessors for backing fields, if accessed inside lambda / object literal / local class #KT-9657 Fixed
A set of tests provided
Also #KT-4867 Fixed
Also #KT-8750 Fixed
Slight codegen refactoring
2015-10-26 16:37:32 +03:00
Michael Bogdanov d054c6bf6a Stable element order in redeclaration diagnostic 2015-10-20 13:25:27 +03:00
Dmitry Petrov dda508234f Drop package facades:
- update tests
- cleanup JetTyMapper after rebase
2015-10-19 16:03:22 +03:00
Dmitry Petrov 8ab55813fe Dropping package facades:
- clashing JVM signature diagnostics should be reported in stable order
- drop tests for clashes vs package facades
- introduce box test for class named as old package facade
- fix some testData
2015-10-19 16:03:19 +03:00
Dmitry Petrov e7fb7483c5 Drop package facades: update compiler tests. 2015-10-19 16:03:16 +03:00
Michael Bogdanov 01864801f3 Stable accessors names 2015-10-18 17:53:29 +03:00
Denis Zharkov f0e3fd617d Adjust testData to CharSequence.length transformation 2015-10-14 20:39:35 +03:00
Alexander Udalov 13c54a2678 Drop external annotations support in build tools
External annotations will only be considered in the IDE for additional
inspections based on more precise types in Java libraries
2015-10-09 11:51:58 +02:00
Mikhail Glukhikh cba6870f52 protected & internal are now forbidden in interfaces 2015-10-07 11:57:14 +03:00
Mikhail Glukhikh 7a99b3872b Forbid private functions with no body and private properties in traits which are abstract by default 2015-09-30 19:38:02 +03:00
Denis Zharkov 8b8fa40348 Drop tests with obsolete assumption
DefaultImpls classes are not visible in IDE no more because they are inner.
2015-09-30 08:19:52 +03:00
Denis Zharkov a101fffd9a Change INTERFACE_IMPL_CLASS_NAME: $TImpl -> DefaultImpls 2015-09-30 08:19:51 +03:00
Yan Zhulanow 6db9344659 Fix compiler tests 2015-09-25 19:20:20 +03:00
Mikhail Glukhikh ebfb6c8468 private and override are no more compatible 2015-09-25 18:57:55 +03:00
Stanislav Erokhin 88815c40cc Minor. Fix testdata. 2015-09-24 14:07:51 +03:00
Mikhail Glukhikh 315a304c8e New modifier checking strategy: only one error but any number of warnings, a warning can never shadow an error 2015-09-23 16:33:08 +03:00
Mikhail Glukhikh 731fdecf06 private / protected / internal modifiers are deprecated in interfaces, relevant tests changed 2015-09-23 16:32:54 +03:00
Zalim Bashorov 1b00eb3a17 Minor: report error instead of crash with exceptions when collect JetFiles to compile and remove obsolete (wrong now) code
#EA-61681 Obsolete
2015-09-17 15:45:16 +03:00
Alexander Udalov 2b269b2652 Improve ABI version error reporting in the compiler
- only report ABI errors if there's at least one other error
- append additional helpful information to the "unresolved reference" error
2015-09-16 01:44:27 +03:00
Alexander Udalov d98b3433eb Fix ABI version diagnostic for old package facades
Restore the test data that was erroneously replaced in 84649e4
2015-09-16 01:44:27 +03:00
Alexander Udalov 6cecc66d10 Improve ABI version from one number to "major.minor.patch" 2015-09-11 19:28:46 +03:00
Mikhail Glukhikh 3770e7f49f Introduction of AnnotationTarget.CLASS as a replacement for CLASSIFIER (first step) 2015-09-11 17:59:40 +03:00
Yan Zhulanow 5dc9557650 Fix cli test that uses android compiler plugin 2015-09-11 04:30:07 +03:00
Dmitry Petrov 5e38c99f81 Name clash test for file class vs multifile class 2015-09-09 19:08:19 +03:00
Dmitry Petrov 07bedc0378 fix CLI help test 2015-09-09 19:08:18 +03:00
Dmitry Petrov bc5e29df9f update tests: jvmName --> JvmName 2015-09-08 13:02:56 +03:00
Dmitry Petrov 2519641b2b JvmName annotation support, single-file facade case (just rename file facade class)
- initial implementation of JvmFileClassesProvider
- migrate some of PackagePartClassUtil usages to JvmFileClassesProvider (mostly in Codegen)
- placeholder ("no resolve") implementation for migration period and unclear cases
- tests
2015-09-08 13:02:56 +03:00
Alexey Tsvetkov b25dfabbcc Fix modules tests 2015-09-08 05:49:32 +03:00
Michael Nedzelsky de9b5695ae fix tests in org.jetbrains.kotlin.cli 2015-09-08 02:05:05 +03:00
Michael Bogdanov 5805c42305 Write abi version to mapping file 2015-09-07 16:29:16 +03:00
Michael Bogdanov b3fc667c1e WrongAbi test data fix 2015-09-07 16:29:03 +03:00
Michael Bogdanov 84649e4b26 Wrong abi test fix 2015-09-07 16:28:57 +03:00
Michael Bogdanov 843241848f Test fix 2015-09-07 16:28:55 +03:00
Dmitry Petrov a47eaa2cb5 Change part class naming scheme
update tests depending on part class naming
2015-09-07 16:28:42 +03:00
Michael Bogdanov 35d51a8ea4 Update duplicate diagnostic 2015-09-07 16:28:40 +03:00
Mikhail Glukhikh 8f7b29f80a Annotation rename: target --> @Target 2015-09-07 13:42:26 +03:00
Denis Zharkov bbc192fda5 Deprecate suppress annotation in favor of Suppress 2015-09-04 17:23:25 +03:00
Mikhail Glukhikh 4bd48c4796 Regular modifier checker implemented (initial version). A set of tests fixed accordingly.
Most of modifier diagnostic is expressed by REDUNDANT_MODIFIER, INCOMPATIBLE_MODIFIERS, REPEATED_MODIFIER, WRONG_MODIFIER_TARGET, WRONG_MODIFIER_PARENT.
A set of modifier diagnostics is not in use now (but not deleted yet).
2015-08-03 19:41:50 +03:00
Mikhail Glukhikh 0d2a81f098 Annotation target checking in front-end, a set of tests for different annotation targets, existing test fixes
No checks for erroneous annotations. Additional checks for identifiers.
2015-07-14 16:25:04 +03:00
Alexander Udalov 636b63a8c5 Make "reflection not found" a warning, provide a quick fix
Reporting the warning on each "::", as ReflectionNotFoundInspection did, is not
correct anymore, because for example name/get/set on properties works perfectly
without kotlin-reflect.jar in the classpath. So instead we report the warning
on calls to functions from reflection interfaces. This is not perfect either
because it's wrong in projects with custom implementations of reflection
interfaces, but this case is so rare that the users can suppress the warning
there anyway

 #KT-7176 Fixed
2015-07-10 20:10:11 +03:00
Dmitry Jemerov 5eb4a47a1a command line flag to repeat compilation multiple times 2015-06-17 14:55:12 +02:00
Alexander Udalov 54dfd626ab CLI: improve diagnostic message format
- render the whole line where the error/warning points to, if any, and another
  line with '^', like other compilers do
- lowercase diagnostic severity
- decapitalize the message if it doesn't start with a proper name
2015-06-15 15:42:41 +03:00
Alexander Udalov 46515afb22 CLI: don't render non-positive line and column in error messages 2015-06-15 15:42:41 +03:00
Alexander Udalov bca5eb083e Don't report warnings when there are errors
All sane compilers do this
2015-06-15 15:42:40 +03:00
Michael Nedzelsky 744e760444 tests for KT-7618 Compiling Maven project targeting JS fails when no source file present 2015-06-11 22:21:25 +03:00
Michael Nedzelsky 999c83240c JS: error message (not exception) for incompatible abi version during compilation 2015-06-10 05:37:57 +03:00
Evgeny Gerashchenko c194ced87e Performance report is emitted only when corresponding command-line argument is provided. 2015-06-04 19:45:01 +03:00
Alexander Udalov 45c28abfee Keep built-in metadata for reflection interfaces
Reflection interfaces (interfaces in kotlin.reflect.* in core/builtins/) are
now fully considered as built-ins and can be accessed via KotlinBuiltIns. This
increases runtime size by ~20kb, but only because KotlinBuiltIns is static and
is therefore constructed only via resource loading from the compiler classpath
at the moment. As soon as it's possible to inject KotlinBuiltIns to the
particular resolution process, the metadata on JVM will be loaded via standard
annotation mechanism (kotlin.jvm.internal.KotlinClass/KotlinPackage) and wasted
runtime space will be reclaimed
2015-05-26 14:27:38 +03:00