Commit Graph
1181 Commits
Author SHA1 Message Date
pseyfert c9855c4e01 Update syntax files for vim (#2039)
Set comments and commentstring.

These variables are documented e.g. [here](https://vimhelp.org/options.txt.html#%27comments%27).

For comparison other language plugins also set these two variables [vim-go](https://github.com/fatih/vim-go/blob/master/ftplugin/go.vim#L22) or [vim-toml](https://github.com/cespare/vim-toml/blob/main/ftplugin/toml.vim#L18).

I used these variables through the [tcomment](https://github.com/tomtom/tcomment_vim) plugin. e.g. gcc toggles whether the current line is commented in or out. Also standard vim folding (mark a section and hit zf appears affected by these settings).
2022-08-15 15:06:01 -07:00
90babcddc1 Revise associated types and interface parameters in Generics terminology (#1972)
Previous text was not clear, see https://discord.com/channels/655572317891461132/941071822756143115/1004607504396861540 .

Co-authored-by: Thomas Heller <thom.heller@gmail.com>
Co-authored-by: Jon Ross-Perkins <jperkins@google.com>
2022-08-15 15:00:00 -07:00
Zenong Zhang e6651836df Fix source code location for dynamic unformed use in ReturnVar. (#2035)
The error message should point to the source code location of `ReturnVar`, instead of the declaration of the `returned var`.
2022-08-15 12:50:28 -07:00
Adrien Leravat b7ee1dfa22 docs: fix typo in generics overview.md (#2025)
PR for tiny fix to generics overview doc, as suggest here: https://github.com/carbon-language/carbon-lang/pull/1885/files#r943743464
2022-08-15 11:22:51 -07:00
Zenong ZhangandJon Ross-Perkins b28fd7ebc9 Implement more flows on unformed static analysis (#1923)
- Added detection of unformed usage with `return var`, control-flow statements and member access.
- Refactored the work flow: made flow facts a class and moved operations of flow facts into the class.
- Added, cleaned and renamed test cases. Some test cases for the dynamic unformed check were suppressed by the static check. They are now added back.

Co-authored-by: Jon Ross-Perkins <jperkins@google.com>
2022-08-15 10:53:42 -07:00
Kareem Ergawyandergawy d7957cc4e1 Move an llvm::Error return value instead of copying it. (#2030)
Summary:
Fixes a small compilation error where an llvm::Error variable was being
returned by copy rather than by move. The llvm::Error copy constructor
is deleted.

Co-authored-by: ergawy <kareem.ergawy@guardsquare.com>
2022-08-15 10:24:57 -07:00
Enzo Venturi f338f56502 docs: fix little writing issue (#2031) 2022-08-15 10:16:49 -07:00
pk19604014 4c47d87d95 Regenerated fuzzer corpus with regen_corpus.py (#2008)
To pick up proto updates (field renames etc.) and new carbon source samples added to testdata.

```
$ rm explorer/fuzzing/fuzzer_corpus/*
$ explorer/fuzzing/regen_corpus.py
```
2022-08-15 10:14:06 -07:00
Geoff Romer 4b56764f10 Fix link to accepted proposals (#2019) 2022-08-12 16:13:11 -07:00
Jon Ross-Perkins 21311334cb Switch to pull_request_target (#2014)
https://securitylab.github.com/research/github-actions-preventing-pwn-requests/#:~:text=The%20main%20differences%20between%20the,but%20not%20from%20external%20forks.

I'm hoping I actually have the cause of my issues right this time.
2022-08-12 11:57:25 -07:00
Jon Ross-Perkins efde2dcdd9 Switch token approach (#2013)
According to this run, the attempt to get write permissions failed:
https://github.com/carbon-language/carbon-lang/runs/7811743119?check_suite_focus=true

So I'm switching to an org secret, which I believe I can definitely make work.
2022-08-12 11:42:51 -07:00
Jon Ross-Perkins 767e712b47 Try adjusting permissions to label (#2012)
Context: https://github.com/carbon-language/carbon-lang/runs/7811528469?check_suite_focus=true

Permissions seem to be different from when I was testing, seeing if this is enough.
2022-08-12 11:27:09 -07:00
Jon Ross-Perkins 9b3f80c6d6 Switch proposal process from projects to labels (#1981)
This is being done because Projects v1 requires repo write access, a serious limitation for letting people use it. Projects v2 isn't a great option because it lacks event support. Labels are pretty stable in GitHub, so this switches to that.

Note this assumes we're fine renaming "decision: accepted" -> "proposal accepted", etc. There are two reasons for this:

1) To make it clear that this is a proposal-specific label, versus something like an issue for leads label.
2) Removing the colon because it was causing trouble with yaml syntax.

This also adds the "proposal draft" label, mainly to complete the taxonomy.

I was considering whether this should be a proposal itself, but it feels like maybe it's not necessary because it's a fairly low-key infrastructure change, and I'm not sure how much people were relying on the project board anyways.

I tested this in a personal repo, basically just poking at https://github.com/jonmeow/test/pull/2
2022-08-12 11:11:09 -07:00
Jon Ross-Perkins 6b3ea40283 Update leads questions process for labels (#1995)
Separately working on labeling everything and filing tracking issues as discussed.

For project columns, the result is:

"Blocking issues" -> gone, we haven't been using it
"Questions" -> "leads questions" label, open: https://github.com/carbon-language/carbon-lang/issues?
q=is%3Aissue+is%3Aopen+label%3A%22leads+question%22
"Resolved" -> "leads questions" label, closed: https://github.com/carbon-language/carbon-lang/issues?q=is%3Aissue+is%3Aclosed+label%3A%22leads+question%22+
"Needs proposal" -> file a tracking issue, remark on the linked issue
"Deferred" -> add the "long term" label: https://github.com/carbon-language/carbon-lang/issues?q=is%3Aissue+is%3Aopen+label%3A%22leads+question%22+label%3A%22long+term%22

Note the "long term" label overlaps with the automation that reminds people when we're inactive, so it's two birds, one stone.

This is part of #1898
2022-08-12 10:55:45 -07:00
09e4417431 Mark what is provisional in the design overview (#1984)
Also references were added to clarify that some features are not provisional.

Co-authored-by: Jon Ross-Perkins <jperkins@google.com>
Co-authored-by: Geoff Romer <gromer@google.com>
2022-08-11 14:48:35 -07:00
Krishna Agarwal bb0aac61a3 Typo fixes in proposals (#1965)
Some errors and typos in the proposals
2022-08-11 12:06:51 -07:00
josh11b 3276903cee Add alias use case example (#1980)
Motivated by [a conversation in #properties on Discord](https://discord.com/channels/655572317891461132/1007005822821347328/1007016175630295060).
2022-08-10 21:34:54 -07:00
Dennis Onyeka 45a5828bb4 Update low_context_sensitivity (#1970)
Corrected a Typo error on line 220
2022-08-09 15:36:12 -07:00
90598633ec Document a little about moderators and tiers (#1909)
Note, partly writing this down to make sure everyone's in agreement with what's written.

Co-authored-by: Geoff Romer <gromer@google.com>
Co-authored-by: Chandler Carruth <chandlerc@gmail.com>
2022-08-09 15:35:03 -07:00
f754373786 For loop for arrays (#1753)
Co-authored-by: m new <michael.burzan@outlook.de>
Co-authored-by: Geoff Romer <gromer@google.com>
Co-authored-by: Richard Smith <richard@metafoo.co.uk>
2022-08-09 15:34:24 -07:00
2c921efe36 Fix for: missing check that deduced argument converts to type of parameter #1300 (#1918)
Fix #1300

Co-authored-by: m new <michael.burzan@outlook.de>
Co-authored-by: Richard Smith <richard@metafoo.co.uk>
2022-08-09 14:47:52 -07:00
Geoff Romer 4ed8180bc7 Make Rand deterministic (#1910)
Also re-enable auto-updating of Rand test (disabled in #1894)
2022-08-09 14:17:26 -07:00
Asmi AgarwalandJon Ross-Perkins f9bd01536b Fixed error (#1966)
Co-authored-by: Jon Ross-Perkins <jperkins@google.com>
2022-08-09 09:09:33 -07:00
Krishna Agarwal 5d12c25bbe minor mistakes (#1952) 2022-08-09 09:00:07 -07:00
3405691582 7147ea0144 Make platform-specific mmap flags the exception. (#1929)
MAP_POPULATE is a Linux mmap flag that optionally assists read-ahead on
the mapping. It is nonstandard and omission does not affect the
underlying mapping, so fall back to not including the flag, rather than
the reverse.
2022-08-08 16:38:02 -07:00
Jon Ross-Perkins 21d39ef4f9 Add 'about' to group links so the description shows (#1958) 2022-08-08 12:10:37 -07:00
cabmeurer 8f80399bad Fix typo: Add missing backtick (#1959)
There was a small typo in the `contribution_tools.md` for `bazel test //...:all`
2022-08-08 10:42:22 -07:00
Jon Ross-Perkins d7613f5ef7 Updating links for shared drive and access notes (#1933)
Part of #1902 

Fixes #1904 

Regarding #1904, using #access-requests because I've decided I feel weird using any other channel for this (including #proposal-prs-and-process)
2022-08-08 09:11:00 -07:00
Chandler Carruth a4a3cf0136 Create a sync-repos action. (#1863)
This will allow us to automatically create and maintain specific repos
based on the main repository here, pulling key files like the license
and other infrastructure and pushing them systematically to a narrow
repo. Things like editor plugins that are best packaged and installed
from a separate repos can still be developed in a central place, even
potentially sharing common things like grammars where useful.

Currently this will maintain a Vim plugin repository out of the
`utils/vim` directory, but can be easily expanded for other systems.
2022-08-06 15:42:41 -07:00
Jon Ross-Perkins b9e6f82f5d Remove project flag (#1939)
Contributors can't do this right now (requires repo write permissions), need to investigate as part of #1898 (projects v1 vs v2 results may differ)
2022-08-06 14:22:37 -07:00
Metarsit 76a262c0e9 Format Bazel files and add argument to run buildifier on pre-commit (#1919) 2022-08-05 10:09:13 -07:00
Krishna Agarwal 674f2257db grammar mistakes (#1915)
Grammar Mistakes
2022-08-05 08:33:24 -07:00
db3caa5b0c A pass at documenting the toolchain implementation (#1897)
Co-authored-by: Richard Smith <richard@metafoo.co.uk>
Co-authored-by: Chandler Carruth <chandlerc@gmail.com>
2022-08-05 08:26:20 -07:00
Jon Ross-Perkins fb38a43de8 Add formatter mention to the goals (#1922)
Trying to do this without affecting too much. I think we've generally considered this to be part of "refactoring tools", since large-scale refactoring is assisted by automatic formatting, but formatting is visible enough that it's probably worth addressing directly.

Fixes https://github.com/carbon-language/carbon-lang/issues/1656
2022-08-05 07:51:27 -07:00
pmqtt 6dd46066a0 Bool->bool (#1920)
Change Bool to bool in Prelude
2022-08-04 11:09:24 -07:00
pmqtt 63da070671 add operator to comparsion (#1883)
Implement operator <, <=, > and >=
2022-08-04 09:56:16 -07:00
Richard Smith 8af9ebda88 Remove mention of i256 and u256 (#1911)
For now, only document up to 128-bit support given that's all that LLVM supports, in particular for division.
2022-08-04 09:44:16 -07:00
Richard Smith e26bc32343 Change remaining uses of Bool to bool, following #750. (#1901)
The most significant change here is that explorer now uses the chosen spelling
rather than the old `Bool` spelling. Also update a few documentation examples
and some skeletal design docs to use the chosen spelling.
2022-08-03 17:55:34 -07:00
3405691582 72d3d3c75c Don't assume llvm-ar and clang are adjacent. (#1879)
The toolchain embeds the assumption that `clang` and `llvm-ar` are
adjacent, which may not be true on all host platforms. Moreover,
in #1842 and #1843, we test if Homebrow LLVM is in `PATH` by checking
that `llvm-ar` is adjacent to `clang` and if it isn't, we `fail()` the
build, even if `llvm-ar` *is* in `PATH`.

Instead, actually check `PATH` with `repository_ctx.which`. This however
necessitates the assumption that `llvm-ar` and other LLVM binutils
are adjacent, and subsequently that `clang` and `ld.lld` are adjacent.

It appears that we don't seem to always be using these tools, but we
should avoid embedding wrong assumptions regardless.

Update docs to reflect this change.
2022-08-03 15:40:25 -07:00
Zenong Zhang 2f4905bf70 Implement static analysis of unformed usage on local variables. (#1831)
- An introprocedural forward analysis that checks the may-be-formed states on local variables.
 - Returns compilation error on usage of must-be-unformed variables. 
 - Implemented as a pass of `ASTNode` traversal. 
 - Currently supports detection of: function parameter, return expression and rhs of assign.
2022-08-03 15:28:51 -07:00
Adrien Leravat 094311133d Add parsing (only) support for class prefix and 'extends' (#1880)
Provides a first implementation iteration towards class prefix and extension, along with user-friendly error regarding missing implementation for #1881 

**Explorer behavior**
For class prefix `base` and `abstract`: 
```
Class prefixes `base` and `abstract` are not supported yet
```
For extension with `extends`: 
```
Class extension with `extends` is not supported yet
```

**Motivation**
* Provides user-friendly error for these unsupported features
* First implementation increment in supporting class prefix and extension.
2022-08-03 15:24:28 -07:00
Geoff Romer 37f7702d32 Broaden prohibition on insults (#1890)
We shouldn't allow insults even when they're directed against people who aren't "participants", or when they're directed against ideas (because that indirectly attacks the people holding those ideas).
2022-08-03 17:17:02 -04:00
Zenong Zhang 9a7914ee3a Disabled autoupdate (#1894)
Auto-update tries to add `CHECK: Nice!` or `CHECK: HALLO WELT` to the test case. As what's being printed is non-deterministic, the auto-update should be disabled.
2022-08-03 13:19:05 -07:00
Zenong Zhang 8cf32ae107 Implement unformed state of returned var. (#1870)
Added parsing and test casts for unformed `returned var`.
2022-08-03 12:29:15 -07:00
Krishna AgarwalandGeoff Romer 09e62752a0 fixes in docs (#1851)
Co-authored-by: Geoff Romer <gromer@google.com>
2022-08-03 11:33:13 -07:00
Shakeel MahateandJon Ross-Perkins 79df59b1dd Incomplete sentence in _let bindings_ (#1697)
The original sentence was grammatically unsound, specified the three options of copy, move or pointer binding in parenthesis and some words around it.

Co-authored-by: Jon Ross-Perkins <jperkins@google.com>
2022-08-02 10:12:29 -07:00
Jon Ross-Perkins 61fd0a1476 Rollback ubuntu disable (#1877)
Fixed upstream just as I was getting #1872 in
2022-08-01 18:25:13 -07:00
Jon Ross-Perkins 2ed6b6fe8f Temp disable ubuntu testing (#1872)
See #1865, it's broken and I don't see a quick fix.
2022-08-01 18:12:44 -07:00
josh11b 6210353dfe Update links to open discussion minutes archives (#1873) 2022-08-01 16:46:19 -07:00
MarchMore 8b5c13e8de Update CODE_OF_CONDUCT.md (#1810)
Ground rules bullet points do not match with the following detailed description captions
2022-08-01 16:07:59 -07:00