Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/swiftwasm/swift-clang

This repository is no longer in use, please refer to the LLVM monorepo https://github.com/swiftwasm/llvm-project
https://github.com/swiftwasm/swift-clang

[analyzer] PR37501: Disable assertion for logical op short circuit evaluation.

The transfer function for the CFG element that represents a logical operation
computes the value...

9d38fb191095a3fd933daf5794a36da2ac086da6 authored almost 6 years ago
[CodeGenObjC] Fix a nullptr dyn_cast

ObjCMessageExpr::getInstanceReceiver returns nullptr if the receiver
is 'super'. Make this check...

8bf1494af87f222db2b637a3be6cee40a9a51a62 authored almost 6 years ago
[analyzer] Introduce a simplified API for adding custom path notes.

Almost all path-sensitive checkers need to tell the user when something specific
to that checker...

0eaef4712dbb0fa518c61105b0bb14ddfbfe30b2 authored almost 6 years ago
[WebAssembly] Add mutable globals feature

Summary:
This feature is not actually used for anything in the WebAssembly
backend, but adding i...

ed9234835496bbbc16765e64e13dd34d2703ca33 authored almost 6 years ago
[Sema] Avoid sending a dependent expression to the constant evaluator.

Fixes llvm.org/PR41286

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@357304 91177308-...

0cf9ba250e8ec340f5dc0fda616024e0a59f2f1d authored almost 6 years ago
[CodeGen][ObjC] Adjust the addresses passed to calls to synthesized

copy/move constructor/assignment operator functions for non-trivial C
structs.

This commit fixes...

6a3cbe11a42d3b54d4810dacc43c55b5bbe33c0c authored almost 6 years ago
Fix typos and formatting. NFC.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@357228 91177308-0d34-0410-b5e6-96231b3b8...

de9b4ec96e0a475199f2f8f7f83f03445e914d01 authored almost 6 years ago
[Sema] Fix assertion when `auto` parameter in lambda has an attribute.

Fixes the assertion
> no Attr* for AttributedType*
> UNREACHABLE executed at llvm-project/clang/...

f29e4266bd8a20e46da5f8f422742ad02e5108b8 authored almost 6 years ago
[Driver] Use --warn-shared-textrel for Android.

Android does not allow shared text relocations. Enable the linker
warning to detect them by defa...

653be2dd432756f65cfe29ab932175e5b99e3d1c authored almost 6 years ago
Various fixes and additions to creduce-clang-crash.py

Some more additions to the script - mainly reducing the clang args after
the creduce run by remo...

a68f2a2d4e387b369202c9d421857adef34a7ed8 authored almost 6 years ago
[AMDGPU] Switch default DWARF version to 5

Effectively reverts r337612. The issues that cropped up with the last
attempt appear to have gon...

64400c3f96ecc225b01d14ac6bbfc74028be3b14 authored almost 6 years ago
[fuchsia] Add clang-doc to Fuchsia distribution

Differential Revision: https://reviews.llvm.org/D5997

git-svn-id: https://llvm.org/svn/llvm-pro...

39b89fc3b79dad05426ebd4f32689d908e18cb70 authored almost 6 years ago
clang-cl: Expose -fprofile-generate and -fcs-profile-generate (PR41252)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@357255 91177308-0d34-0410-b5e6-96231b3b80d8

a2b9617464c90915883de06ecb5d8a3997a088e5 authored almost 6 years ago
[AArch64] Support selecting TPIDR_EL[1-3] as the thread base

Add an -mtp=el[0-3] option to select which of the AArch64 thread ID registers
will be used for t...

aa9b71f0a66a63039006b8e3dba068c96cdbb995 authored almost 6 years ago
[PowerPC] Add the support for __builtin_setrnd() in clang

Summary:
PowerPC64/PowerPC64le supports the builtin function __builtin_setrnd to set the floatin...

230ca152f54689057255d3c35d52a2bf374823e2 authored almost 6 years ago
Propagating prior merge from 'llvm.org/master'.

245e53582c0c3607d5654601394f1940098de790 authored almost 6 years ago
[Sema] Fix a crash when nonnull checking

Summary:
- If a parameter is used, nonnull checking needs function prototype to
retrieve the c...

5ab26d0031b723c63ed29554dbe97fed3f076419 authored almost 6 years ago
Merge remote-tracking branch 'origin/swift-5.1-branch' into stable

74a87ff180b2a4fb140d33cce8cb7548f71fd014 authored almost 6 years ago
[CodeGen][ObjC] Adjust the addresses passed to calls to synthesized

copy/move constructor/assignment operator functions for non-trivial C
structs.

This commit fixes...

316b9626930c0b397ffe3c053cdd336ca51b4d04 authored almost 6 years ago
Fix typos and formatting. NFC.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@357228 91177308-0d34-0410-b5e6-96231b3b80d8

d3a5343d6a6be0c1be10943070e3eb888b271024 authored almost 6 years ago
[MS] Make __iso_volatile_* available on all targets

Future versions of MSVC make these intrinsics available on x86 & x64,
according to:
http://lists...

c78aff6fa276b5164a89c3d078631dd2e0a2cab1 authored almost 6 years ago
[OPENMP]Add check for undefined behavior with thread allocators on

target and task-based directives.

According to OpenMP 5.0, 2.11.4 allocate Clause, Restrictions,...

522c8dac2d3d16fe43cae5a9a709e58ffd469a70 authored almost 6 years ago
[Driver] Default Android toolchains to noexecstack.

Android does not support executable stacks.

Reviewers: srhines, pirama

Reviewed By: pirama

Su...

228956a75037b98bd4053f5e294a2fee9232f6f4 authored almost 6 years ago
[WebAssembly] Reland of rL356953 (4dcf3acce6)

The previous patch was missing GetProgramPath() in the return value
of getLinkerPath().

See htt...

2ccfb1c1553fd8d2eddb7414296faf63832212bb authored almost 6 years ago
[CodeGen] Add additional mangling for struct members of non trivial structs

In https://bugs.llvm.org/show_bug.cgi?id=41206 we observe bad codegen
when embedding a non-trivi...

fa421b7cec70754d4b1c69996a06a4c55e5feb0f authored almost 6 years ago
Make helper functions static. NFC.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@357187 91177308-0d34-0410-b5e6-96231b3b80d8

0f3d45f893f4c92b4e8e29aa21321ebe90a862b3 authored almost 6 years ago
[CodeGen] Add additional mangling for struct members of non trivial structs

In https://bugs.llvm.org/show_bug.cgi?id=41206 we observe bad codegen
when embedding a non-trivi...

5e12e9d63e3f8ec6de50843cc378f9a08c3013df authored almost 6 years ago
[Analyzer] Constraint Manager - Calculate Effective Range for Differences

Since rL335814, if the constraint manager cannot find a range set for `A - B`
(where `A` and `B`...

92470c6aadff9e614bfac44f48e6e1d430e5a32d authored almost 6 years ago
Fix Wdocumentation warning. NFCI.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@357163 91177308-0d34-0410-b5e6-96231b3b80d8

e65a994942eb6c6aed63b4767867aea85a0f4bd7 authored almost 6 years ago
[PR41247] Fixed parsing of private keyword in C++.

Fixed bug in C++ to prevent parsing 'private' as a
valid address space qualifier.

Differential ...

aef981ef412f9b527292b2e911453d56d327e883 authored almost 6 years ago
Fix tests after rC357150

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@357151 91177308-0d34-0410-b5e6-96231b3b80d8

961f21b225d19fd5d602dfd6d29e2ca9a0600a38 authored almost 6 years ago
Propagating prior merge from 'llvm.org/master'.

dfca96e898b3a19e7314843c1b48e6d193c23084 authored almost 6 years ago
[Driver] Allow -gsplit-dwarf on ELF OSes other than Linux and Fuchsia

In gcc, -gsplit-dwarf is handled in gcc/gcc.c as a spec
(ASM_FINAL_SPEC): objcopy --extract-dwo ...

7ed3676637b8ab82af6c38576d6b96c8c7a6b06e authored almost 6 years ago
Merge remote-tracking branch 'origin/swift-5.1-branch' into stable

af214493d6980380d05402d2e417ef90a8cb1e68 authored almost 6 years ago
Merge pull request #286 from shafik/49110005_IsStructuralMatch_EnumDecl_fix_b

[ASTImporter] Fix IsStructuralMatch specialization for EnumDecl to prevent re-importing an EnumD...

017911e36580705fc9e1b49c6bd2818837f77b45 authored almost 6 years ago
Revert "[WebAssembly] Don't use default GetLinkerPath"

This reverts commit 4dcf3acce6d7455fd079d8e57441906ca2bad254.
(reverts LLVM SVN r356953)

git-sv...

a938da9b49ee84a89035b21508d5a36eaea7c116 authored almost 6 years ago
Make -mno-outline pass -enable-machine-outliner=never to ld in LTO

Since AArch64 has default outlining behaviour, we need to make sure that
-mno-outline is actuall...

e45132a38481d801ca60ee0b49c89d7666b83f0b authored almost 6 years ago
[ASTImporter] Fix IsStructuralMatch specialization for EnumDecl to prevent re-importing an EnumDecl while trying to complete it

Summary:
We may try and re-import an EnumDecl while trying to complete it in IsStructuralMatch(....

c438291cff817e2f4ff17d890beddf042fa29e8b authored almost 6 years ago
[ASTImporter] Fix IsStructuralMatch specialization for EnumDecl to prevent re-importing an EnumDecl while trying to complete it

Summary:
We may try and re-import an EnumDecl while trying to complete it in IsStructuralMatch(....

1c1e6801d6e32a7cdba32a7865efa6b7027cbecb authored almost 6 years ago
[OPENMP]Initial support for 'allocate' clause.

Added parsing/sema analysis of the allocate clause.

git-svn-id: https://llvm.org/svn/llvm-proje...

18917301298ad6df9e989983ed1e22cb0f9dff29 authored almost 6 years ago
Revert the r348352 "[clang] - Simplify tools::SplitDebugName."

This partially reverts the r348352 (https://reviews.llvm.org/D55006)
because of https://bugs.llv...

7c21fe2c07d1df4480ddf35a03d218e0f5b4af3d authored almost 6 years ago
Merge remote-tracking branch 'origin/swift-5.1-branch' into stable

f6e68ee8fd2f2f1c75952d4f7555cbe9278cb80a authored almost 6 years ago
[Sema] Fix an assert when a block captures a constexpr local

MarkVarDeclODRUsed indirectly calls captureInBlock, which creates a copy
expression. The copy ex...

c72b1b5f4a16c1da0095df79020d418d3699021e authored almost 6 years ago
Emit -Wfortify-source using DiagRuntimeBehaviour

This fixes a false positive on the following, where st is configured to have
different sizes bas...

92053fee4de8009646eeb55af50c8715be29c6bf authored almost 6 years ago
[Sema] Fix an assert when a block captures a constexpr local

MarkVarDeclODRUsed indirectly calls captureInBlock, which creates a copy
expression. The copy ex...

bec53e9a3fc9d04855588abd1021c762d48ea866 authored almost 6 years ago
Propagating prior merge from 'llvm.org/master'.

7312327db992d69a9c918fb9d2c103a0238bdb68 authored almost 6 years ago
Basic: Return a reference from FileManager::getVirtualFileSystem, NFC

FileManager constructs a VFS in its constructor if it isn't passed one,
and there's no way to re...

1d5d78550597af1319b12a03da080bddc4bb43b2 authored almost 6 years ago
[Modules] Use -skip-unused-modulemap-deps by default

This defaults dependency file generation to use
-skip-unused-modulemap-deps

It should allow bui...

243fb2e7b096ec68b8f8aabef8dabfed3efb32a5 authored almost 6 years ago
[Modules] Skip adding unused module maps to the dependency file

Current generation of dependency files when modules is on take into
account all parsed module ma...

96163fbef9ca97f7583d45667f00e7ddd60c21b4 authored almost 6 years ago
Frontend: Remove CompilerInstance::VirtualFileSystem, NFC

Remove CompilerInstance::VirtualFileSystem and
CompilerInstance::setVirtualFileSystem, instead r...

5f92395a7e64526f6f94f31a9d143f81a69e9209 authored almost 6 years ago
[cmake] Reset variable before using it

A bunch of macros use the same variable name, and since CMake macros
don't get their own scope, ...

f17219973cd3249977f260d834bc92ca9c16ee3b authored almost 6 years ago
Make -mno-outline pass -enable-machine-outliner=never to ld in LTO

Since AArch64 has default outlining behaviour, we need to make sure that
-mno-outline is actuall...

1eeae75f3fc8e59305cc7f738b11a0976cb4f0bc authored almost 6 years ago
[Modules] Use -skip-unused-modulemap-deps by default

This defaults dependency file generation to use
-skip-unused-modulemap-deps

It should allow bui...

9b5199328ea8241968600e28200b13c004231996 authored almost 6 years ago
[Modules] Skip adding unused module maps to the dependency file

Current generation of dependency files when modules is on take into
account all parsed module ma...

16cfd7f448f6f95587361c2a4da4bfdf17b59c80 authored almost 6 years ago
[clang-format] Add style option AllowShortLambdasOnASingleLine

Summary:
This option `AllowShortLambdasOnASingleLine` similar to the other `AllowShort*` options...

7e997c278b6a5b1e2e39c7242dd854b3d10b58ee authored almost 6 years ago
Thread Safety: also look at ObjC methods

Summary:
SExprBuilder::translateDeclRefExpr was only looking at FunctionDecl and not also lookin...

cbdb155f7680bd87b6020277fe22b40fb9e90991 authored almost 6 years ago
[CodeGen] Delete never used LValueAlign

It was added by rC176658 but never used since then.

git-svn-id: https://llvm.org/svn/llvm-proje...

182d7fa38b05c20dea18a8d5c922710b2f0b7875 authored almost 6 years ago
[OpenCL] Allow variadic macros as Clang feature.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@356987 91177308-0d34-0410-b5e6-96231b3...

f671b140e870f928f1313421b65acff37b8b92ca authored almost 6 years ago
update the release notes after the change of 'clang -dumpversion'

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@356983 91177308-0d34-0410-b5e6-96231b3b80d8

f469a1cb81189ebb874b4a3317a41bd3af743fde authored almost 6 years ago
Propagating prior merge from 'llvm.org/master'.

13bf1026e6de29becf43f83be8a835620a968280 authored almost 6 years ago
[RISCV] Pass -target-abi to -cc1as

The RISC-V assembler needs the target ABI because it defines a flag of the ELF
file, as describe...

a67b0501cbbab83a4a0795365ef9c38f0a6473f6 authored almost 6 years ago
[CMake][Fuchsia] Merge static libunwind and libc++abi into libc++ on Darwin

We want to distribute only a single archive so -lc++ does the right
thing and users don't have t...

9b4841a16a4db0abbaf14a1b8114f568ab564ebc authored almost 6 years ago
[CFG] [analyzer] pr41142: C++17: Skip transparent InitListExprs in ExprEngine.

r356634 didn't fix all the problems caused by r356222 - even though simple
constructors involvin...

a7ecb4c15930a731f3e3a653497b9a3ec5668847 authored almost 6 years ago
[MS] Add frontend support for __declspec(allocator)

The intention is to add metadata to direct call sites of functions
marked with __declspec(alloca...

8b0ef00444cbfdd108d9a6136147a104b4e8c5f9 authored almost 6 years ago
[Sema] Don't check for array bounds when the types in the base expression are dependent

Bail-out of CheckArrayAccess when the types of the base expression before
and after eventual cas...

51c9672078f4ecd63472ef871e969666377263a8 authored almost 6 years ago
[WebAssembly] Don't use default GetLinkerPath

We can't (don't want to) honor the same set of "-fuse-ld" flags with
WebAssembly since the ELF l...

331ec6cc6fd27d11e552e08566b78b70379daf3e authored almost 6 years ago
AMDGPU: Add support for cross address space synchronization scopes (clang)

Differential Revision: https://reviews.llvm.org/D59494

git-svn-id: https://llvm.org/svn/llvm-p...

f100795281f48b6cbf9e00438b10da5ebae546a0 authored almost 6 years ago
Thread Safety: also look at ObjC methods

Summary:
SExprBuilder::translateDeclRefExpr was only looking at FunctionDecl and not also lookin...

96ad72202285f4473a4ae19c5d46e5a959ae24e5 authored almost 6 years ago
clang -dumpversion returns 4.2.1 for legacy reason, update it

Summary:
It has been introduced in 2011 for gcc compat:
https://github.com/llvm-mirror/clang/com...

e05b36f6045598eed19bceb03e1fad6eeaa8abd0 authored almost 6 years ago
Moved everything SMT-related to LLVM and updated the cmake scripts.

Differential Revision: https://reviews.llvm.org/D54978

git-svn-id: https://llvm.org/svn/llvm-pr...

698feb0c19a24c686c6c9c623452ee6a635b6b6b authored almost 6 years ago
[clang-format] Refine structured binding detection

Summary:
Revision r356575 had the unfortunate consequence that now clang-format never
detects an...

994377621ed23aa675c45c089a49e5522ebaac2e authored almost 6 years ago
[Sema][NFCI] Don't allocate storage for the various CorrectionCandidateCallback unless we are going to do some typo correction

The various CorrectionCandidateCallbacks are currently heap-allocated
unconditionally. This was ...

62e8a2946b0928cb349cee4acb6fb64f950312f2 authored almost 6 years ago
[clang] Remove cmake warning message (NFC)

Recognize an empty string for CLANG_DEFAULT_UNWINDLIB as a valid option.

git-svn-id: https://ll...

a24f0488377773a35bfc27e25a4f8ed01c9fe2b3 authored almost 6 years ago
Revert "[clang-format] Keep protobuf "package" statement on one line"

This reverts commit r356835. This patch causes a regression, see the
test below:

verifyFormat("...

34b404d309a8610fe2729fe9a98f564486f3673c authored almost 6 years ago
[OpenCL] Allow addr space spelling without __ prefix in C++.

For backwards compatibility we allow alternative spelling of address
spaces - 'private', 'local'...

342dd05bcbbc3a49e28aa176f31676c8740db89b authored almost 6 years ago
Propagating prior merge from 'llvm.org/master'.

08d529275762cc7218fd07c80042facd33fd2044 authored almost 6 years ago
[ASTImporter] Changed use of Import to Import_New in ASTNodeImporter.

Reviewers: a.sidorin, shafik, martong, a_sidorin

Reviewed By: a_sidorin

Subscribers: a_sidorin...

805d58dd43c1329590299f37ad2f48efbae3c78b authored almost 6 years ago
Un-revert "[coroutines][PR40978] Emit error for co_yield within catch block"

Summary:
https://reviews.llvm.org/D59076 added a new coroutine error that
prevented users from u...

e48636b555d95d380d825fc84c172b86b39e0eae authored almost 6 years ago
[X86] Make _bswap intrinsic a function instead of a macro to hopefully fix the chromium build.

This intrinsic was added in r356848 but was implemented as a macro to match gcc.

git-svn-id: ht...

14891bbc892662cbc7d7b4b8f033ebe62fba41dc authored almost 6 years ago
Propagating prior merge from 'llvm.org/master'.

1c33479f6148a5be3d268274fbbfbd06cda61dae authored almost 6 years ago
[X86] Add BSR/BSF/BSWAP intrinsics to ia32intrin.h to match gcc.

Summary:
These are all implemented by icc as well.

I made bit_scan_forward/reverse forward to t...

8a55120a7d72bed6c93749e0a6dbd0a2fcd873dd authored almost 6 years ago
[WebAssembly] Fix test/Driver/wasm-toolchain.c in the presence of CLANG_DEFAULT_LINKER

This was broken in rL356817 (See https://reviews.llvm.org/D59721)

git-svn-id: https://llvm.org/...

b4bcb2930e135762b2820fe85ba4a8cb65e431be authored almost 6 years ago
libclang/CIndexer.cpp: Use loadquery() on AIX for path to library

Summary:
`dladdr` is not available on AIX. Similar functionality is presented
through `loadquery...

16d2eeeed3ab20e089b5dc33bbf82ed4bafb0d65 authored almost 6 years ago
Sync some doc changes ClangFormatStyleOptions.rst with doc comments in `Format.h`

Summary:
These changes were corrected directly in ClangFormatStyleOptions.rst (llvm-svn: 350192 ...

595a8a043129a63c1be5d515e43d27e830ef0294 authored almost 6 years ago
Fix unused variable warning. NFCI.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@356839 91177308-0d34-0410-b5e6-96231b3b80d8

ed6f4138a9f36c11b0e5f641873ce53ff97ac6f6 authored almost 6 years ago
[clang-format] Keep protobuf "package" statement on one line

Summary:
Top-level "package" and "import" statements should generally be kept on one
line, for a...

aca36bed51a99615ddd5a9db8d63064daa57cdc6 authored almost 6 years ago
Clang-format: add finer-grained options for putting all arguments on one line

Summary:
Add two new options,
AllowAllArgumentsOnNextLine and
AllowAllConstructorInitializersOnN...

c4515d09740be87226d185f7728893d26c5af652 authored almost 6 years ago
[clang-format] correctly format protobuf fields named "enum".

Summary: Similar to TypeScript, "enum" is not a reserved word.

Reviewers: krasimir, MyDeveloper...

f503b6985438025bd8fee75a547c9aec8b0a0c74 authored almost 6 years ago
Merge remote-tracking branch 'origin/swift-5.1-branch' into stable

2c0904089bbdbe1d00bcb58b3c4e5de778054e2c authored almost 6 years ago
Propagating prior merge from 'llvm.org/master'.

baa49a325db262d9846cba30f56681d2a6eb4feb authored almost 6 years ago
IRGen: Remove StructorType; thread GlobalDecl through more code. NFCI.

This should make it easier to add more structor variants.

Differential Revision: https://review...

3a3e9339ecc6421084530f8f55aec6ec3fb82c43 authored almost 6 years ago
[clang-format][NFC] correct the release notes

Move the clang-format notes to the correct section

git-svn-id: https://llvm.org/svn/llvm-projec...

ef806ba1d72cb6f4a81366b2a2f83e33202b353e authored almost 6 years ago
[WebAssembly] Make driver -pthread imply linker --shared-memory

Summary:
This eliminates a linker error the user might otherwise see about how
using the 'atomic...

e9970c8c78fa268e40cd28ea37decff2db4f5729 authored almost 6 years ago
Fix cleanup registration for lambda captures.

Lambda captures should be destroyed if an exception is thrown only if
the construction of the co...

8bae514c89644bd9e8d9369351bcfdfa7ee081e6 authored almost 6 years ago
[clang] Add support for Exynos M5 (NFC)

Add Exynos M5 test cases.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@356794 911773...

884b0b4b1912d272bdf140a63b7d779c785ce7c1 authored almost 6 years ago
IR: Support parsing numeric block ids, and emit them in textual output.

Just as as llvm IR supports explicitly specifying numeric value ids
for instructions, and emits ...

210219ba269639a9ac04214d5ca0184f3bcf62c2 authored almost 6 years ago
[CodeGen][ObjC] Annotate calls to objc_retainAutoreleasedReturnValue

with notail on x86-64.

On x86-64, the epilogue code inserted before the tail jump blocks the
aut...

40eaff19bc810b245ca9a3cc04a5eb251c3fac68 authored almost 6 years ago
[ARM] Fix bug 39982 - pcs("aapcs-vfp") is not consistent

Correctly handle homogeneous aggregates when a
function's ABI is specified via the pcs attribute...

f69b9c5a06575236f75d3e543efe43db22de4c3c authored almost 6 years ago
Revert "[coroutines][PR40978] Emit error for co_yield within catch block"

The commit https://reviews.llvm.org/rC356296 is causing a regression in nested
catch scopes, htt...

55c482d7c1862a534afabee4bec00995226e5c89 authored almost 6 years ago
[OPENMP]Add missing comment, NFC.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@356759 91177308-0d34-0410-b5e6-96231b3b80d8

29f42bb2962f052b4bf94caa9ead47a30f9911d7 authored almost 6 years ago