-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DartVM: factory constructors issues #980
Comments
Marked this as being blocked by #1031. |
The first example relates to a rule that is very likely to be relaxed into a static warning. So while it should indeed give a compiler error today, it will almost certainly not do so in the near future. So I would not invest time fixing it. It does however bring up an interesting question: is a typedef an interface? The test writer assumes it is not. That assumption is only true for function types, though we might specify how to interpret a function typedef as an interface as well. The second example is brilliantly perverse. It should be legal per spec, even though it is quite useless. Perhaps it should be made into an error or warning however. |
This comment was originally written by @seaneagan I don't think a function typedef can be specified as a nominal interface, since it defines a structural/duck type (along with an alias for it). More generic structural typedefs might be nice though: typedef Addable<E> { Then for example you could define a SummableCollection which requires its type argument to be Addable, but doesn't require the author of the type used as the type argument to know or care about Addable: interface SummableCollection<E extends Addable<E>> extends Collection<E> { Also, this would allow a function typedef such as: typedef R Nullary<R, T>(T x); to desugar to the following structural "interface": typedef Nullary<R, T> extends Function { |
Obviously, the function type itself is not an interface, as the spec makes clear. One could choose to interpret it in a suitable way however - as an interface with an appropriately typed call method. |
This comment was originally written by @seaneagan I think it would be incorrect to say that a (structural) function typedef is the same as a (nominal) interface with an appropriately defined call operator. However, structural types could be thought of as union types of all possible nominal types with the same structure, so function typedefs could be considered union types of all interfaces which define appropriately typed call operators (and extend Function?). |
This comment was originally written by [email protected] even though the bug is a bit dusty, this probably still belongs here: It is a compile-time error if M is not the name of the immediately enclosing class (7.6.2) |
Is this report still valid? Set owner to @gbracha. |
Both the examples in the original report are still compile time errors. The spec now says It is a compile-time error if M is not the name of the immediately enclosing class. (7.6.2) |
Removed Priority-Medium label. |
The problem appears to be solved. Both the original examples fail with a message saying the constructor name must be C. Added Fixed label. |
2021-01-24 [email protected] Issue #983: Static warning checks corrected. 2021-01-22 [email protected] Issue #983: triple-shift folders re-named correctly, typo in the library paths updated for 2 tests. 2021-01-21 [email protected] Fixes #985. LateInitializationError removed 2021-01-20 [email protected] Fixes #982. Add tests for The future value type of an asynchronous non-generator function part of NNBD spec 2021-01-19 [email protected] Issue #462: NNBD type-normalization tests for weak mode added. 2021-01-19 [email protected] Issue #462: NNBD type-aliases tests for weak mode added. 2021-01-19 [email protected] Issue #462: NNBD tripple-shift tests for weak mode added. 2021-01-19 [email protected] Issue #462: NNBD tests for weak mode added for the override checkings. 2021-01-19 [email protected] Issue #462: NNBD tests for weak mode added (Leatest-greatest-closures). 2021-01-19 [email protected] Issue #462: NNBD tests for weak mode added (Leatest-greatest-closures). 2021-01-18 [email protected] Fixes #981. Add tests for Return statements part of NNBD spec 2021-01-18 [email protected] Issue #462: NNBD tests for weak mode corrected according to the current Spec changes. 2021-01-14 [email protected] Issue #462: Additional comments regarding the constant evaluation issues added to weak mode tests. 2021-01-14 [email protected] Fixes #980. Remove warnings expectations for overriding default values of optional parameters tests 2021-01-13 [email protected] Issue #462: Tests for weak mode added to nnbd/weak/flow-analysis directory. 2021-01-12 [email protected] #978. Weak mode test changes 2021-01-12 [email protected] Issue #462: Tests for weak mode added to nnbd/weak directory. 2021-01-11 [email protected] Fixes #978. Tests updated according to the "flow analysis boolean variable" feature 2020-12-25 [email protected] Issues #463: Tests for weak mode added. 2020-12-25 [email protected] Issues #462, #463: Moved or added new nnbd tests for weak mode, added new tests for strong mode. 2020-12-24 [email protected] #970. Usr correct values for ProcessSignal.sigusr1 and ProcessSignal.sigusr2 on Mac 2020-12-24 [email protected] Issue #462: 1. Added nnbd tests for weak mode: exports_*, expression_typing_*, extension_method_resolution_*, future_flattening_*. 2. Moved and re-factored nnbd extension_method_resolution_*, future_flattening_* tests for weak mode into weak folder. 3. Copyrights updated Issue #463: Two exports* tests for strong mode added. 2020-12-24 [email protected] Fixes #496. Change tested date to 1 second instead of 1 day to reduce probability to change timezone on DST 2020-12-23 [email protected] Fixes #473. Remove UtilsHtml directory 2020-12-23 [email protected] Fix for Issue #462: 1. Added nnbd tests for weak mode: assignability_*, const_evaluation_*, const_objects_*, const_type_var_elimination_*. 2. Moved and re-factored nnbd exports_* tests for weak mode into weak folder. 2020-12-10 [email protected] Fixes #976. Remove obsolete errors expectations 2020-12-10 [email protected] Fixes #975. Fix wrong expected compile time error type 2020-12-07 [email protected] Flag Requirements=nnbd-weak added to the tests that run legacy code Cq-Include-Trybots: dart/try:analyzer-nnbd-linux-release-try,dart2js-nnbd-linux-x64-chrome-try,ddc-nnbd-linux-release-chrome-try,front-end-nnbd-linux-release-x64-try,vm-kernel-nnbd-linux-release-simarm64-try,vm-kernel-nnbd-linux-release-x64-try,vm-kernel-nnbd-mac-release-x64-try,vm-kernel-nnbd-win-release-x64-try,vm-kernel-precomp-nnbd-linux-release-x64-try Change-Id: I69acc5c0a28fd2e7a2d38f6c9062e5a5854bdfa6 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180823 Reviewed-by: William Hesse <[email protected]>
…ctor, browser_launcher, characters, cli_util, clock, collection, convert, crypto, csslib, dartdoc, ecosystem, ffi, fixnum, glob, html, http, http_multi_server, http_parser, json_rpc_2, leak_tracker, lints, logging, markdown, matcher, mime, mockito, native, package_config, path, pool, protobuf, pub_semver, shelf, source_map_stack_trace, source_maps, source_span, sse, stack_trace, stream_channel, string_scanner, term_glyph, test, test_descriptor, test_process, test_reflective_loader, tools, typed_data, usage, watcher, web_socket_channel, webdev, yaml Revisions updated by `dart tools/rev_sdk_deps.dart`. args (https://github.com/dart-lang/args/compare/a9543c0..da56b18): da56b18 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#249) async (https://github.com/dart-lang/async/compare/a506993..b65622a): b65622a 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#247) bazel_worker (https://github.com/dart-lang/bazel_worker/compare/f7b714e..c29d162): c29d162 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#77) benchmark_harness (https://github.com/dart-lang/benchmark_harness/compare/e717ad4..fde73cb): fde73cb 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#91) boolean_selector (https://github.com/dart-lang/boolean_selector/compare/3a1c982..303635d): 303635d 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#49) browser_launcher (https://github.com/dart-lang/browser_launcher/compare/40e4315..27ec600): 27ec600 2023-07-05 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#46) dd8df9c 2023-07-05 Devon Carew update formatting for recent lints (#47) characters (https://github.com/dart-lang/characters/compare/3ef8883..ec844db): ec844db 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#84) cli_util (https://github.com/dart-lang/cli_util/compare/5a49947..9b7ce78): 9b7ce78 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#84) clock (https://github.com/dart-lang/clock/compare/21caac1..263e508): 263e508 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#54) collection (https://github.com/dart-lang/collection/compare/a37bd51..db343da): db343da 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#295) convert (https://github.com/dart-lang/convert/compare/9a387f0..79ee174): 79ee174 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#84) crypto (https://github.com/dart-lang/crypto/compare/216931a..8b704c6): 8b704c6 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#150) csslib (https://github.com/dart-lang/csslib/compare/be2e11e..7e91228): 7e91228 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#187) dartdoc (https://github.com/dart-lang/dartdoc/compare/c2ed703..2522559): 25225596 2023-06-29 Sam Rawlins Migrate some simple tasks to a simple package:args command (#3456) ecosystem (https://github.com/dart-lang/ecosystem/compare/19fa443..b34db4f): b34db4f 2023-07-10 Moritz Allow empty coverage (#128) 5944328 2023-07-04 Moritz Prepare for publish (#127) c0701c9 2023-07-04 dependabot[bot] Bump dart-lang/setup-dart from 1.4.0 to 1.5.0 (#122) 9bf3a10 2023-07-03 Moritz Fix bug by switching `reduce` to `fold` (#126) fdfa528 2023-07-01 dependabot[bot] Bump actions/cache from 3.2.6 to 3.3.1 (#121) 238444c 2023-07-01 dependabot[bot] Bump actions/checkout from 3.3.0 to 3.5.3 (#123) ca1e1ae 2023-06-30 Moritz Add coverage workflow (#119) cf02b4a 2023-06-30 Lasse R.H. Nielsen Make Changelog class eagerly load and parse file. (#120) ffi (https://github.com/dart-lang/ffi/compare/f582ca0..f01dfca): f01dfca 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#199) fixnum (https://github.com/dart-lang/fixnum/compare/d9b9a2a..00fa120): 00fa120 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#113) glob (https://github.com/dart-lang/glob/compare/109121d..5b24393): 5b24393 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#79) html (https://github.com/dart-lang/html/compare/b3b820b..4060496): 4060496 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#218) 8cb99e4 2023-07-01 Devon Carew address new analysis issues (#219) http (https://github.com/dart-lang/http/compare/d68081f..c148a3a): c148a3a 2023-07-07 Alex James Java http BaseClient implementation (#980) 474999f 2023-07-05 Brian Quinlan Document that the network entitlement is required when running in the macOS sandbox (#979) 98e4112 2023-07-05 Brian Quinlan Fix a bug where ...WebSocketClosed had two different initializer signatures (#981) 9833a20 2023-07-05 Brian Quinlan Support Steam<List<int>> as a provider of request data (#975) d3e78a0 2023-07-01 dependabot[bot] Bump actions/labeler from 4.0.4 to 4.2.0 (#976) http_multi_server (https://github.com/dart-lang/http_multi_server/compare/a209cd5..aa128cf): aa128cf 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#56) http_parser (https://github.com/dart-lang/http_parser/compare/19466c0..c14fbf6): c14fbf6 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#75) json_rpc_2 (https://github.com/dart-lang/json_rpc_2/compare/73467f3..509f71e): 509f71e 2023-07-05 Nate Bosch Fix the example to act as a server (#100) d80cbd0 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#99) leak_tracker (https://github.com/dart-lang/leak_tracker/compare/c75b0a7..85bd7fb): 85bd7fb 2023-07-05 Polina Cherkasova - (#87) lints (https://github.com/dart-lang/lints/compare/89f9519..e03dc04): e03dc04 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#138) logging (https://github.com/dart-lang/logging/compare/f2fe2ac..5214987): 5214987 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#144) markdown (https://github.com/dart-lang/markdown/compare/4674d09..b4bdde2): b4bdde2 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#549) matcher (https://github.com/dart-lang/matcher/compare/7e10117..ce8f409): ce8f409 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#225) mime (https://github.com/dart-lang/mime/compare/2444840..bdb66bd): bdb66bd 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#99) mockito (https://github.com/dart-lang/mockito/compare/974226e..451f756): 451f756 2023-07-10 Nate Bosch Add example of mocking callbacks c13496c 2023-07-05 Googler Rollback of "Use `FunctionTypedElement.type` while generating method overrides" 60e619a 2023-07-05 Ilya Yanok Use `FunctionTypedElement.type` while generating method overrides 93b69ef 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#669) a926a63 2023-06-30 Ilya Yanok Add a note on only running codegen on files under `test/` by default 9f40189 2023-06-30 Ilya Yanok Require analyzer 5.12.0 native (https://github.com/dart-lang/native/compare/e12d3e6..de1b0cc): de1b0cc 2023-07-10 Daco Harkes [c_compiler] Pass the correct SDK for iOS simulator builds (#77) 21d7270 2023-07-01 dependabot[bot] Bump coverallsapp/github-action from 2.1.2 to 2.2.0 (#72) 23a9b62 2023-07-01 dependabot[bot] Bump nttld/setup-ndk (#74) 44073a8 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#75) 6f01604 2023-07-01 dependabot[bot] Bump actions/labeler from 4.0.4 to 4.2.0 (#73) package_config (https://github.com/dart-lang/package_config/compare/203de20..be0c441): be0c441 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#138) path (https://github.com/dart-lang/path/compare/592505f..282dd18): 282dd18 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#147) pool (https://github.com/dart-lang/pool/compare/c6b1b2c..7700102): 7700102 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#72) protobuf (https://github.com/dart-lang/protobuf/compare/7bebbc6..a912f76): a912f76 2023-07-04 Ömer Sinan Ağacan Add more message set tests, fix a bug (#859) pub_semver (https://github.com/dart-lang/pub_semver/compare/3930557..028b435): 028b435 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#90) shelf (https://github.com/dart-lang/shelf/compare/ce379aa..bd59ead): bd59ead 2023-07-06 Kevin Moore router_generator: allow latest pkg:analyzer, request Dart 3 (#368) bebc801 2023-07-06 Jonas Finnemann Jensen Fix 244 (#268) 1617efa 2023-07-02 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#366) c037bb6 2023-07-02 dependabot[bot] Bump actions/labeler from 4.0.4 to 4.2.0 (#365) 1ae4d4e 2023-07-01 Devon Carew address a new lint (#367) source_map_stack_trace (https://github.com/dart-lang/source_map_stack_trace/compare/b83af01..16e54fd): 16e54fd 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#40) source_maps (https://github.com/dart-lang/source_maps/compare/58eef30..97c4833): 97c4833 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#80) source_span (https://github.com/dart-lang/source_span/compare/4dc78fb..37735ae): 37735ae 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#99) sse (https://github.com/dart-lang/sse/compare/bfcbcd7..e241085): e241085 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#85) stack_trace (https://github.com/dart-lang/stack_trace/compare/8b2046e..4ddd86d): 4ddd86d 2023-07-05 Slava Egorov Prepare 1.11.1 release (#137) d3e4c4d 2023-07-04 Slava Egorov Use awaiter-link pragma to guide VM's builtin awaiter stack unwinding (#135) 44aafa3 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#136) stream_channel (https://github.com/dart-lang/stream_channel/compare/34804a1..e54234f): e54234f 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#93) string_scanner (https://github.com/dart-lang/string_scanner/compare/6bb314f..35657e2): 35657e2 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#59) term_glyph (https://github.com/dart-lang/term_glyph/compare/4daa34e..423700a): 423700a 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#40) test (https://github.com/dart-lang/test/compare/021667a..3429712): 3429712b 2023-07-06 Nate Bosch Drop usage of window.testRunner (#2059) dc6b8236 2023-06-29 dependabot[bot] Bump actions/checkout from 3.1.0 to 3.5.3 (#2051) b6dc3f8d 2023-06-29 dependabot[bot] Bump dart-lang/setup-dart from 1.3.0 to 1.5.0 (#2052) 5fa2572f 2023-06-29 Jacob MacDonald regenerate mono_repo with the latest (#2055) 56584627 2023-06-29 dependabot[bot] Bump github/codeql-action from 2.3.5 to 2.20.1 (#2053) 050fe2d6 2023-06-29 dependabot[bot] Bump ossf/scorecard-action from 2.1.3 to 2.2.0 (#2054) ba6ccfc2 2023-06-29 Devon Carew config dependabot to send daily PRs for major version bumps (#2050) test_descriptor (https://github.com/dart-lang/test_descriptor/compare/be7ce07..54a4c59): 54a4c59 2023-07-03 Devon Carew update formatting for recent lints (#54) test_process (https://github.com/dart-lang/test_process/compare/5ff2122..b360784): b360784 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#46) test_reflective_loader (https://github.com/dart-lang/test_reflective_loader/compare/40d61b1..0bfaad9): 0bfaad9 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#50) tools (https://github.com/dart-lang/tools/compare/8db0aa1..af38b2b): af38b2b 2023-07-02 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#119) 8b8ccab 2023-07-01 Devon Carew update formatting based on the recent lints (#121) 30b50ff 2023-07-01 dependabot[bot] Bump coverallsapp/github-action from 2.1.2 to 2.2.0 (#118) 74979c1 2023-07-01 dependabot[bot] Bump actions/labeler from 4.0.4 to 4.2.0 (#120) typed_data (https://github.com/dart-lang/typed_data/compare/8d29573..a20be90): a20be90 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#69) usage (https://github.com/dart-lang/usage/compare/6ee0908..09bb847): 09bb847 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#196) watcher (https://github.com/dart-lang/watcher/compare/3f17faa..7457413): 7457413 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#148) web_socket_channel (https://github.com/dart-lang/web_socket_channel/compare/7fb82f2..7ae4d0f): 7ae4d0f 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#274) webdev (https://github.com/dart-lang/webdev/compare/8360d50..f0ba743): f0ba7438 2023-07-07 Elliott Brooks Reset webdev to version 3.0.7-wip (#2170) 2fcc1ba9 2023-07-06 Anna Gringauze Add option of running frontend server tests in canary mode (#2169) 632763a5 2023-07-06 Elliott Brooks Prepare webdev for release to 3.0.6 (#2167) fa7b6d44 2023-07-05 dependabot[bot] Bump actions/checkout from 3.5.0 to 3.5.3 (#2163) 2a6a457b 2023-07-05 Devon Carew regenerate from the latest mono_repo (#2165) cbb0d76a 2023-07-05 Anna Gringauze Run instance tests with frontend server (#2160) b672e98a 2023-07-05 Elliott Brooks Reset DWDS after release (#2168) 8ef92d71 2023-07-05 Elliott Brooks Prepare DWDS for release to version 19.0.2 (#2166) 77e5b373 2023-07-05 Elliott Brooks Handle potential `null` value in `setUpChromeConsoleListeners` (#2162) 5081dff0 2023-07-01 dependabot[bot] Bump actions/labeler from 4.0.4 to 4.2.0 (#2164) yaml (https://github.com/dart-lang/yaml/compare/0b9041d..7930148): 7930148 2023-07-01 dependabot[bot] Bump actions/checkout from 3.5.2 to 3.5.3 (#148) Change-Id: I095a2479946e13d8499f1b3a58dc5a82688063f6 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/313020 Reviewed-by: Konstantin Shcheglov <[email protected]> Commit-Queue: Devon Carew <[email protected]>
This issue was originally filed by [email protected]
The spec v0.06 states:
It is a compile-time error if M is not the name of the immediately enclosing class or the name of an interface in the enclosing lexical scope.
consider the following test:
typedef foo();
class C {
C() {}
factory foo() {}
}
main() {
new C();
}
This test should fail with compile-time error, however it compiles fine.
One more test:
class S {}
class C extends S {
C() {}
factory S() {}
}
main() {
new C();
}
class S provides the implied interface which should be fine to use as a factory constructor name in C. However, the following compile-time error is produced:
Error: line 18 pos 12: static function 'S.' of class 'C' conflicts withinstance member 'S.' of super class 'S'.
factory S() {}
What version of the product are you using? On what operating system?
DartVM r2810
Please provide any additional information below.
co19 tests:
LangSpecTest/07_Classes/5_Constructors/2/Factories/A05/t03
LangSpecTest/07_Classes/5_Constructors/2/Factories/A05/t02
The text was updated successfully, but these errors were encountered: