Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Add flag to Dart VM --enable-checked-mode #1950

Closed
sethladd opened this issue Mar 2, 2012 · 9 comments
Closed

Add flag to Dart VM --enable-checked-mode #1950

sethladd opened this issue Mar 2, 2012 · 9 comments
Assignees
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. type-enhancement A request for a change that isn't a bug

Comments

@sethladd
Copy link
Contributor

sethladd commented Mar 2, 2012

We talk about checked mode and production mode a lot, both in our documentation and in the spec. To keep things simple, I suggest adding an --enable-checked-mode flag to the VM, which turns on the behavior and semantics specified by what "checked mode" means.

I believe this is the same as --enable_type_checks and --enable_asserts

Ideally, this matches the same flags that can be given to Frog.

@ghost
Copy link

ghost commented Mar 2, 2012

IN VM --enable_type_checks is the same flag as requested --enable_checked_mode: it turns on the type checks and enables asserts. We may want to rename --enable_type_checks to --enable_checked_mode to be consistent with naming in spec.


Set owner to @crelier.

@crelier
Copy link
Contributor

crelier commented Mar 2, 2012

I'm afraid I do not like this proposed change. VM flags should have a more specific meaning than just "checked mode" and a finer granularity on what they control. Adding a new flag, rather than renaming an existing one is not much better, since it makes flags depending on each other. On the other hand, --enable_type_checks already turns on --enable_asserts, if I remember correctly.
   
Reassigning to Ivan for more opinion.


Set owner to @iposva-google.

@sethladd
Copy link
Contributor Author

sethladd commented Mar 2, 2012

Here's an example, from the spec, where "checked mode" means "turn on asserts":

"""
In checked mode, execution of an assert statement assert(e); proceeds as follows:
"""

@crelier
Copy link
Contributor

crelier commented Mar 3, 2012

After some discussion, it seems that keeping --enable_asserts and --enable_type_checks (but decoupling them), and adding a new --enable_checked_mode is the right solution.

Asserts would be evaluated if --enable_asserts or --enable_checked_mode.
Type checks would be performed if --enable_type_checks or --enable_checked_mode.

Let me know if this is acceptable.

@sethladd
Copy link
Contributor Author

sethladd commented Mar 3, 2012

SGTM! Thanks for simplifying this. :)

@iposva-google
Copy link
Contributor

Set owner to @crelier.
Added Accepted label.

@sethladd
Copy link
Contributor Author

sethladd commented Mar 5, 2012

Frog just added --enable-checked-mode (notice dashes, not underscores)

@iposva-google
Copy link
Contributor

Set owner to @iposva-google.

@iposva-google
Copy link
Contributor

I did add support for --enable-checked-mode in the VM. That left me wondering whether we want to keep the name or whether we want to simplify to --checked-mode.

https://chromiumcodereview.appspot.com/9668034/


Added Fixed label.

@sethladd sethladd added Type-Enhancement area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. labels Mar 9, 2012
@kevmoo kevmoo added type-enhancement A request for a change that isn't a bug and removed type-enhancement labels Mar 1, 2016
copybara-service bot pushed a commit that referenced this issue Feb 23, 2023
Revisions updated by `dart tools/rev_sdk_deps.dart`.

dartdoc (https://github.com/dart-lang/dartdoc/compare/dba6f94..e4cdbd6):
  e4cdbd6f  2023-02-21  Janice Collins  Record rendering simplification (#3344)

http (https://github.com/dart-lang/http/compare/c13a3f8..1500a71):
  1500a71  2023-02-23  Devon Carew  contribute a pull request labeler workflow (#875)
  e2c4e6f  2023-02-21  Brian Quinlan  Add a link to cronet_http_embedded from cronet_http. (#874)

markdown (https://github.com/dart-lang/markdown/compare/4befe66..ecbffa9):
  ecbffa9  2023-02-22  Kevin Moore  Use latest lints, require Dart 2.19 or later (#524)

shelf (https://github.com/dart-lang/shelf/compare/707c8b2..e3cfe79):
  e3cfe79  2023-02-22  Devon Carew  contribute issue templates and a pull request labeler (#332)

test (https://github.com/dart-lang/test/compare/e56c643..2cc4144):
  2cc4144e  2023-02-22  Nate Bosch  Avoid exceptions for iterable getters (#1954)
  f7fe4f06  2023-02-22  Nate Bosch  Include stack trace for exception in has (#1953)
  ba8e43af  2023-02-22  Nate Bosch  Only grab the first failure in softCheck (#1949)
  34df652b  2023-02-22  Nate Bosch  Flush stdin before test (#1950)
  ae015ef6  2023-02-22  Nidal Bakir  Add Concurrency Testing section to README (#1944)
  4e23d036  2023-02-21  Nate Bosch  Mention .having and .has in migration guide (#1948)
  438c2274  2023-02-21  Nate Bosch  Annotate `has` with `@useResult` (#1947)
  3ddecafd  2023-02-21  Nate Bosch  Add async examples to README (#1946)

tools (https://github.com/dart-lang/tools/compare/a53933c..c7518f7):
  c7518f7  2023-02-22  Elias Yishak  Update to regex to look for underscore delimited labels (#12)

webdev (https://github.com/dart-lang/webdev/compare/ae7eb80..1e7f9b7):
  1e7f9b7  2023-02-22  Anna Gringauze  Create copying sdk configuration provider (#1984)
  26910ba  2023-02-22  Anna Gringauze  Pass SdkLayout to the frontend server (#1986)
  784e28b  2023-02-22  Anna Gringauze  Remove unnecessary awaits (#1982)
  3cbaf37  2023-02-22  Elliott Brooks (she/her)  [MV3 Debug Extension] Support Bolt workflow (#1983)
  0f893e6  2023-02-22  Anna Gringauze  Move project definitions into a separate class (#1975)
  a942b5f  2023-02-22  Anna Gringauze  Add unnecessary_lambdas lint (#1978)
  3774cf8  2023-02-21  Anna Gringauze  Add 'avoid_void_async' lint (#1977)
  705e0ac  2023-02-21  Elliott Brooks (she/her)  [MV3 Debug Extension] Show a warning if multiple Dart apps are in a single page (#1976)

Change-Id: Iea264a18a154e71cd0990e1363951648bec5ceba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/284940
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Auto-Submit: Devon Carew <devoncarew@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
This issue was closed.
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. type-enhancement A request for a change that isn't a bug
Projects
None yet
Development

No branches or pull requests

4 participants