Page MenuHomePhabricator

jkorous (Jan Korous)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 18 2018, 2:22 AM (256 w, 5 d)

Recent Activity

Today

jkorous accepted D142795: [-Wunsafe-buffer-usage] Add Fixable for dereference of simple ptr arithmetic.

LGTM

Mon, Mar 20, 2:41 PM · Restricted Project
jkorous added a comment to D143628: [-Wunsafe-buffer-usage][PoC][WIP] Add #include <span> to emitted Fix-Its.

Note: The naive strategy doesn't add #include <span> to header files declaring a function which parameter we change.
We might have to track all the files we add a reference to a new type and make sure all of those have the necessary headers included.

Mon, Mar 20, 2:39 PM · Restricted Project

Thu, Mar 16

jkorous added a comment to D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.

I found one more bug.

Thu, Mar 16, 4:24 PM · Restricted Project

Mon, Mar 13

jkorous added a comment to D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.

I just discovered my original prototype had yet another bug - parameters that use "array syntax" would get spanified but their name would be missing.

Mon, Mar 13, 6:03 PM · Restricted Project
jkorous accepted D145993: [-Wunsafe-buffer-usage] Reducing non-determinism in diagnostics output stream.

+1 to moving the comparator to the .cpp file; otherwise LGTM!
Thanks for fixing this!

Mon, Mar 13, 3:32 PM · Restricted Project, Restricted Project
jkorous added a comment to D142795: [-Wunsafe-buffer-usage] Add Fixable for dereference of simple ptr arithmetic.

We agreed with @ymandel to have a separate discussion about how can Safe Buffers Fix-Its benefit from using libClangTransformers .
Our tentative plan is to it for new code that we write and eventually change all our code to use it.

Mon, Mar 13, 12:52 PM · Restricted Project

Thu, Mar 9

jkorous added inline comments to D144905: [-Wunsafe-buffer-usage] Handle unevaluated contexts that contain unsafe buffer usages.
Thu, Mar 9, 7:13 PM · Restricted Project

Wed, Mar 8

jkorous added a comment to D144905: [-Wunsafe-buffer-usage] Handle unevaluated contexts that contain unsafe buffer usages.

@NoQ I don't want to be annoying but I think you meant "warnings aren't emitted against UNEVALUATED code", is that right?

Wed, Mar 8, 1:04 PM · Restricted Project

Fri, Mar 3

jkorous added a comment to D143128: [-Wunsafe-buffer-usage] Fix-Its transforming `&DRE[any]` to `(DRE.data() + any)`.

This is an interesting topic. In the abstract I see the question as should the Fix-Its prioritize how the code will fit the desired end state (presumably modern idiomatic C++) or carefully respect the state of the code as is now.

Fri, Mar 3, 10:22 AM · Restricted Project, Restricted Project

Thu, Mar 2

jkorous added a comment to D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.

As we discussed offline - we should add tests that our overload conflict detection would notice overloads that are declared below the function that's being analyzed.
Since our analysis callback is invoked after a body function has been parsed (but before the whole TU is parsed) it is not immediately clear if all function declarations in the TU will already be represented in the AST at that point.

Thu, Mar 2, 4:44 PM · Restricted Project

Wed, Mar 1

jkorous added inline comments to D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.
Wed, Mar 1, 3:39 PM · Restricted Project

Feb 17 2023

jkorous added inline comments to D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.
Feb 17 2023, 4:07 PM · Restricted Project
jkorous added inline comments to D143697: [-Wunsafe-buffer-usage] Create Fix-Its only if they are emitted.
Feb 17 2023, 3:37 PM · Restricted Project, Restricted Project

Feb 16 2023

jkorous added inline comments to D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.
Feb 16 2023, 3:23 PM · Restricted Project

Feb 13 2023

jkorous added a comment to D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.

Note: One thing that I have little confidence the current patch handles correctly would be qualified function names. Definitely need tests.

Feb 13 2023, 12:03 PM · Restricted Project
jkorous updated the summary of D143935: [-WunsafeBufferUsage][WIP] Add PointerArithmeticFixable.
Feb 13 2023, 11:56 AM · Restricted Project
jkorous requested review of D143935: [-WunsafeBufferUsage][WIP] Add PointerArithmeticFixable.
Feb 13 2023, 11:55 AM · Restricted Project
jkorous added inline comments to D143206: [-Wunsafe-buffer-usage] Add Fixable for simple pointer dereference.
Feb 13 2023, 10:37 AM · Restricted Project
jkorous added inline comments to D143133: [-Wunsafe-buffer-usage][WIP] Add fixit for variables that have an assignment from another spanified pointer.
Feb 13 2023, 10:36 AM · Restricted Project
jkorous added inline comments to D143676: [-Wunsafe-buffer-usage] FixableGadget for handling pointer references under UPC..
Feb 13 2023, 10:30 AM · Restricted Project

Feb 10 2023

jkorous updated the diff for D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.

Started working on conflict detection for added compatibility overload.

Feb 10 2023, 1:18 AM · Restricted Project

Feb 9 2023

jkorous added inline comments to D143133: [-Wunsafe-buffer-usage][WIP] Add fixit for variables that have an assignment from another spanified pointer.
Feb 9 2023, 10:09 PM · Restricted Project
jkorous added inline comments to D143697: [-Wunsafe-buffer-usage] Create Fix-Its only if they are emitted.
Feb 9 2023, 6:39 PM · Restricted Project, Restricted Project
jkorous requested review of D143697: [-Wunsafe-buffer-usage] Create Fix-Its only if they are emitted.
Feb 9 2023, 6:36 PM · Restricted Project, Restricted Project
jkorous added a comment to D143455: [-Wunsafe-buffer-usage] Emit Fix-Its only for C++20 and later standards.

We actually have only commits with warnings in release/16.x - no Fix-Its. So no need to cherry-pick.

Feb 9 2023, 5:38 PM · Restricted Project, Restricted Project
jkorous committed rG8b6ae9bd7466: [-Wunsafe-buffer-usage] Emit Fix-Its only for C++20 and later standards (authored by jkorous).
[-Wunsafe-buffer-usage] Emit Fix-Its only for C++20 and later standards
Feb 9 2023, 5:29 PM · Restricted Project, Restricted Project
jkorous closed D143455: [-Wunsafe-buffer-usage] Emit Fix-Its only for C++20 and later standards.
Feb 9 2023, 5:28 PM · Restricted Project, Restricted Project
jkorous added inline comments to D143455: [-Wunsafe-buffer-usage] Emit Fix-Its only for C++20 and later standards.
Feb 9 2023, 4:26 PM · Restricted Project, Restricted Project
jkorous added reviewers for D143628: [-Wunsafe-buffer-usage][PoC][WIP] Add #include <span> to emitted Fix-Its: malavikasamak, t-rasmud, ziqingluo-90.
Feb 9 2023, 10:55 AM · Restricted Project

Feb 8 2023

jkorous requested review of D143628: [-Wunsafe-buffer-usage][PoC][WIP] Add #include <span> to emitted Fix-Its.
Feb 8 2023, 11:15 PM · Restricted Project

Feb 6 2023

jkorous requested review of D143455: [-Wunsafe-buffer-usage] Emit Fix-Its only for C++20 and later standards.
Feb 6 2023, 6:42 PM · Restricted Project, Restricted Project
jkorous added inline comments to D143128: [-Wunsafe-buffer-usage] Fix-Its transforming `&DRE[any]` to `(DRE.data() + any)`.
Feb 6 2023, 5:38 PM · Restricted Project, Restricted Project
jkorous accepted D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.

LGTM
Thank you!

Feb 6 2023, 2:15 PM · Restricted Project, Restricted Project
jkorous added inline comments to D143206: [-Wunsafe-buffer-usage] Add Fixable for simple pointer dereference.
Feb 6 2023, 12:09 PM · Restricted Project
jkorous added inline comments to D143128: [-Wunsafe-buffer-usage] Fix-Its transforming `&DRE[any]` to `(DRE.data() + any)`.
Feb 6 2023, 12:00 PM · Restricted Project, Restricted Project

Feb 3 2023

jkorous added inline comments to D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.
Feb 3 2023, 2:10 PM · Restricted Project, Restricted Project
jkorous added inline comments to D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.
Feb 3 2023, 2:08 PM · Restricted Project, Restricted Project

Feb 2 2023

jkorous added inline comments to D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.
Feb 2 2023, 7:11 PM · Restricted Project, Restricted Project

Feb 1 2023

jkorous updated the diff for D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.
  • fixed all crashes in our tests
  • added cases of functions where we should not emit Fix-Its for parameters
Feb 1 2023, 11:58 PM · Restricted Project
jkorous retitled D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters from [-Wunsafe-buffer-usage][WIP] Fix-Its for T* -> std::span<T> function parameters to [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.
Feb 1 2023, 11:52 PM · Restricted Project
jkorous added inline comments to D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.
Feb 1 2023, 8:15 PM · Restricted Project, Restricted Project
jkorous updated the diff for D142795: [-Wunsafe-buffer-usage] Add Fixable for dereference of simple ptr arithmetic.

rebased

Feb 1 2023, 7:41 PM · Restricted Project
jkorous updated the diff for D142794: [-Wunsafe-buffer-usage] Fixits for assignment to array subscript expr.

rebased

Feb 1 2023, 7:40 PM · Restricted Project, Restricted Project
jkorous updated the diff for D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.
  • rebased
  • moved compatibility decl/def below original
Feb 1 2023, 7:38 PM · Restricted Project
jkorous added a comment to D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.

I got a test failure in SemaCXX/warn-unsafe-buffer-usage-fixits-local-var-span.cpp which I believe is caused solely by the fact that we emit the diagnostics in different order.
I am not sure it matters and since the Fix-Its clearly specify what source lines they apply to I suggest we simply replace every // CHECK: with // CHECK-DAG:.
That fixed the problem for me.

Feb 1 2023, 2:53 PM · Restricted Project, Restricted Project

Jan 31 2023

jkorous added inline comments to D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.
Jan 31 2023, 11:50 PM · Restricted Project
jkorous planned changes to D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.
Jan 31 2023, 11:36 PM · Restricted Project
jkorous requested review of D143048: [-Wunsafe-buffer-usage][WIP] Add T* -> span<T> Fix-Its for function parameters.
Jan 31 2023, 11:36 PM · Restricted Project

Jan 30 2023

jkorous added inline comments to D142795: [-Wunsafe-buffer-usage] Add Fixable for dereference of simple ptr arithmetic.
Jan 30 2023, 3:32 PM · Restricted Project

Jan 27 2023

jkorous added inline comments to D142795: [-Wunsafe-buffer-usage] Add Fixable for dereference of simple ptr arithmetic.
Jan 27 2023, 6:33 PM · Restricted Project
jkorous added a comment to D142795: [-Wunsafe-buffer-usage] Add Fixable for dereference of simple ptr arithmetic.

I think that my current name of the Fixable is pretty bad - open to suggestions!

Jan 27 2023, 6:29 PM · Restricted Project
jkorous requested review of D142795: [-Wunsafe-buffer-usage] Add Fixable for dereference of simple ptr arithmetic.
Jan 27 2023, 6:26 PM · Restricted Project
jkorous requested review of D142794: [-Wunsafe-buffer-usage] Fixits for assignment to array subscript expr.
Jan 27 2023, 6:24 PM · Restricted Project, Restricted Project
jkorous added a comment to D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.

I am sorry I haven't notice this earlier - let's fix this before we land the patch.

Jan 27 2023, 6:04 PM · Restricted Project, Restricted Project
jkorous added inline comments to D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.
Jan 27 2023, 11:51 AM · Restricted Project, Restricted Project

Jan 18 2023

jkorous committed rGf252333b978c: [-Wunsafe-buffer-usage][NFC] Fix Fixables filtering (authored by jkorous).
[-Wunsafe-buffer-usage][NFC] Fix Fixables filtering
Jan 18 2023, 6:55 PM · Restricted Project, Restricted Project
jkorous committed rG237ca436adf4: [-Wunsafe-buffer-usage] Group diagnostics by variable (authored by jkorous).
[-Wunsafe-buffer-usage] Group diagnostics by variable
Jan 18 2023, 3:02 PM · Restricted Project, Restricted Project
jkorous closed D141356: [-Wunsafe-buffer-usage] Group diagnostics by variable.
Jan 18 2023, 3:02 PM · Restricted Project, Restricted Project
jkorous committed rG39a63fc7fe98: [-Wunsafe-buffer-usage] Use relevant source locations for warnings (authored by jkorous).
[-Wunsafe-buffer-usage] Use relevant source locations for warnings
Jan 18 2023, 2:19 PM · Restricted Project, Restricted Project
jkorous closed D141340: [-Wunsafe-buffer-usage] Use relevant source locations for warnings.
Jan 18 2023, 2:19 PM · Restricted Project, Restricted Project

Jan 17 2023

jkorous committed rG214312ef7ee4: [-Wunsafe-buffer-usage][NFC] Refactor checkUnsafeBufferUsage (authored by jkorous).
[-Wunsafe-buffer-usage][NFC] Refactor checkUnsafeBufferUsage
Jan 17 2023, 6:01 PM · Restricted Project, Restricted Project
jkorous closed D141333: [-Wunsafe-buffer-usage][NFC] Refactor checkUnsafeBufferUsage.
Jan 17 2023, 6:01 PM · Restricted Project, Restricted Project
jkorous closed D141725: [-Wunsafe-buffer-usage] Emit warnings about unsafe operations on arrays.

The patch has already landed in:
https://github.com/llvm/llvm-project/commit/fe93da22aa7bd57e277571cd692c7c0cc51c0478

Jan 17 2023, 5:32 PM · Restricted Project
jkorous updated the diff for D141356: [-Wunsafe-buffer-usage] Group diagnostics by variable.

Respect 80-char line limit in changes to DiagnosticSemaKinds.td.

Jan 17 2023, 1:51 PM · Restricted Project, Restricted Project
jkorous updated the diff for D141340: [-Wunsafe-buffer-usage] Use relevant source locations for warnings.

Addressed the comments about use of auto in declarations.

Jan 17 2023, 1:41 PM · Restricted Project, Restricted Project
jkorous accepted D141725: [-Wunsafe-buffer-usage] Emit warnings about unsafe operations on arrays.

LGTM

Jan 17 2023, 11:04 AM · Restricted Project
jkorous abandoned D141353: [-Wunsafe-buffer-usage] Emit warnings about unsafe operations on arrays.

Deprecate in favor of https://reviews.llvm.org/D141725

Jan 17 2023, 11:03 AM · Restricted Project

Jan 12 2023

jkorous added inline comments to D141353: [-Wunsafe-buffer-usage] Emit warnings about unsafe operations on arrays.
Jan 12 2023, 12:31 PM · Restricted Project

Jan 11 2023

jkorous added inline comments to D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.
Jan 11 2023, 3:44 PM · Restricted Project, Restricted Project
jkorous updated the diff for D141333: [-Wunsafe-buffer-usage][NFC] Refactor checkUnsafeBufferUsage.
  • made WarningGadgetSets and FixableGadgetSets own the gadgets
  • changed temporary function parameter name StrategyForDirectlyUnsafeVariables to S
Jan 11 2023, 2:32 PM · Restricted Project, Restricted Project
jkorous added a comment to D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.

It sounds to me as if by landing the patch we'll temporarily make the compiler emit incorrect fixes. I think we should avoid doing that. Is it possible to wait until our first proof-of-concept FixableGadget lands before landing this patch? I think there shouldn't be too much conflict between such patches.

Jan 11 2023, 12:41 PM · Restricted Project, Restricted Project
jkorous added inline comments to D141353: [-Wunsafe-buffer-usage] Emit warnings about unsafe operations on arrays.
Jan 11 2023, 12:38 PM · Restricted Project

Jan 10 2023

jkorous added reviewers for D141333: [-Wunsafe-buffer-usage][NFC] Refactor checkUnsafeBufferUsage: aaron.ballman, xazax.hun, gribozavr, ymandel, sgatev, steakhal.
Jan 10 2023, 5:15 PM · Restricted Project, Restricted Project
jkorous added reviewers for D141340: [-Wunsafe-buffer-usage] Use relevant source locations for warnings: aaron.ballman, xazax.hun, gribozavr, ymandel, sgatev, steakhal.
Jan 10 2023, 5:14 PM · Restricted Project, Restricted Project
jkorous added reviewers for D141353: [-Wunsafe-buffer-usage] Emit warnings about unsafe operations on arrays: aaron.ballman, xazax.hun, gribozavr, ymandel, sgatev, steakhal.
Jan 10 2023, 5:13 PM · Restricted Project
jkorous added reviewers for D141356: [-Wunsafe-buffer-usage] Group diagnostics by variable: aaron.ballman, xazax.hun, gribozavr, ymandel, sgatev, steakhal.
Jan 10 2023, 5:13 PM · Restricted Project, Restricted Project
jkorous retitled D141356: [-Wunsafe-buffer-usage] Group diagnostics by variable from [WIP][-Wunsafe-buffer-usage] Group diagnostics by variable to [-Wunsafe-buffer-usage] Group diagnostics by variable.
Jan 10 2023, 10:14 AM · Restricted Project, Restricted Project

Jan 9 2023

jkorous requested review of D141356: [-Wunsafe-buffer-usage] Group diagnostics by variable.
Jan 9 2023, 11:49 PM · Restricted Project, Restricted Project
jkorous requested review of D141353: [-Wunsafe-buffer-usage] Emit warnings about unsafe operations on arrays.
Jan 9 2023, 9:46 PM · Restricted Project
jkorous requested review of D141340: [-Wunsafe-buffer-usage] Use relevant source locations for warnings.
Jan 9 2023, 5:52 PM · Restricted Project, Restricted Project
jkorous requested review of D141333: [-Wunsafe-buffer-usage][NFC] Refactor checkUnsafeBufferUsage.
Jan 9 2023, 4:28 PM · Restricted Project, Restricted Project
jkorous added inline comments to D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.
Jan 9 2023, 2:30 PM · Restricted Project, Restricted Project

Jan 4 2023

jkorous added inline comments to D140062: [-Wunsafe-buffer-usage] Safe-buffers re-architecture to introduce Fixable gadgets.
Jan 4 2023, 6:17 PM · Restricted Project, Restricted Project
jkorous added inline comments to D140062: [-Wunsafe-buffer-usage] Safe-buffers re-architecture to introduce Fixable gadgets.
Jan 4 2023, 5:54 PM · Restricted Project, Restricted Project
jkorous added inline comments to D140062: [-Wunsafe-buffer-usage] Safe-buffers re-architecture to introduce Fixable gadgets.
Jan 4 2023, 5:53 PM · Restricted Project, Restricted Project

Dec 20 2022

jkorous added a comment to D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations.

Thanks for the rebase!

Dec 20 2022, 10:41 AM · Restricted Project, Restricted Project

Dec 19 2022

jkorous added inline comments to D138940: [-Wunsafe-buffer-usage] Introduce the `unsafe_buffer_usage` attribute.
Dec 19 2022, 4:59 PM · Restricted Project, Restricted Project

Dec 16 2022

jkorous added inline comments to D140179: [-Wunsafe-buffer-usage] Add unsafe buffer checking opt-out pragmas.
Dec 16 2022, 10:40 AM · Restricted Project, Restricted Project
jkorous accepted D138253: [-Wunsafe-buffer-usage] NFC: Implement fix-strategies and variable-use-claiming..

LGTM

Dec 16 2022, 9:43 AM · Restricted Project, Restricted Project
jkorous accepted D137348: [-Wunsafe-buffer-usage] Introduce an abstraction for fixable code patterns..

LGTM

Dec 16 2022, 9:43 AM · Restricted Project, Restricted Project

Dec 15 2022

jkorous accepted D140062: [-Wunsafe-buffer-usage] Safe-buffers re-architecture to introduce Fixable gadgets.

I did a superficial pass and the code LGTM (just nits).

Dec 15 2022, 5:36 PM · Restricted Project, Restricted Project

Dec 9 2022

jkorous added a reviewer for D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations: sgatev.
Dec 9 2022, 1:14 PM · Restricted Project, Restricted Project
jkorous added a reviewer for D139737: [-Wunsafe-buffer-usage] Initiate Fix-it generation for local variable declarations: ymandel.
Dec 9 2022, 1:13 PM · Restricted Project, Restricted Project

Dec 6 2022

jkorous added a comment to D135851: [clang] Support for read-only types.

Hi @erichkeane,
I am sorry to bother you but in case you are ok with the patch could you please approve?
It sounds like you are taking a break from reviews starting later this week until January.
I'd appreciate if you could unblock us (unless you still have some comments).

Dec 6 2022, 10:50 AM · Restricted Project, Restricted Project

Dec 1 2022

jkorous added inline comments to D137379: [-Wunsafe-buffer-usage] Add warnings for unsafe buffer accesses by array subscript operations.
Dec 1 2022, 9:26 AM · Restricted Project, Restricted Project

Nov 30 2022

jkorous added inline comments to D138940: [-Wunsafe-buffer-usage] Introduce the `unsafe_buffer_usage` attribute.
Nov 30 2022, 12:26 PM · Restricted Project, Restricted Project

Nov 15 2022

jkorous accepted D137346: [-Wunsafe-buffer-usage] Initial commit - Transition away from raw buffer accesses..

@aaron.ballman Do you have any objection to us landing this?

Nov 15 2022, 11:29 AM · Restricted Project, Restricted Project

Nov 7 2022

jkorous added a comment to D136811: [-Wunsafe-buffer-usage] WIP: RFC: NFC: User documentation..

@aaron.ballman We'd like to start making progress on the implementation in parallel to iterating on the documentation and this is our first patch:
https://reviews.llvm.org/D137346

Nov 7 2022, 4:37 PM · Restricted Project

Nov 3 2022

jkorous added inline comments to D136811: [-Wunsafe-buffer-usage] WIP: RFC: NFC: User documentation..
Nov 3 2022, 6:54 PM · Restricted Project
jkorous added a comment to D136811: [-Wunsafe-buffer-usage] WIP: RFC: NFC: User documentation..

Thank you for the feedback Gábor!

Nov 3 2022, 1:37 PM · Restricted Project