tclinken
885a2e020e
Generate rvalue reference overloads with actor compiler
2020-04-21 15:18:59 -07:00
Steve Atherton
022b77e288
Actor compiler will std::move() return expressions that exactly match a state variable.
2020-04-20 04:19:33 -07:00
Alex Miller
2e53c8c5e2
Merge pull request #2915 from tclinken/move-optimizations
...
Avoid unnecessary copies in PromiseStream
2020-04-13 21:15:16 -07:00
tclinken
3a01d24970
Pass const ref to a_callback_fire
2020-04-08 14:50:41 -07:00
Markus Pilman
d4542dbb5a
Delete old build system
2020-04-07 11:03:45 -07:00
Andrew Noyes
36fd1ec0e4
Add sealed as a valid class-virt-specifier
2019-09-12 10:53:17 -07:00
Andrew Noyes
703e7fd944
Put generated code back in anonymous namespace where possible
2019-09-11 16:30:37 -07:00
Andrew Noyes
f983b3c786
Remove stale comment
2019-09-10 14:29:16 -07:00
Andrew Noyes
9d531db985
Handle nested classes
2019-09-10 13:25:58 -07:00
Andrew Noyes
c487f021f0
WIP - seems to work for 1 level of nesting
2019-09-10 13:09:37 -07:00
Andrew Noyes
eeb2da5c9d
WIP - simple example compiles
2019-09-09 22:56:19 -07:00
Andrew Noyes
0a1fecfc2e
Update flow/actorcompiler/ActorParser.cs
...
Co-Authored-By: A.J. Beamon <ajbeamon@users.noreply.github.com>
2019-08-16 09:24:57 -07:00
Andrew Noyes
356abc2f9a
Update flow/actorcompiler/ParseTree.cs
...
Co-Authored-By: A.J. Beamon <ajbeamon@users.noreply.github.com>
2019-08-16 09:24:57 -07:00
Andrew Noyes
ad9bc06dd7
Make unknown flow attributes an error
2019-08-16 09:24:57 -07:00
Andrew Noyes
5751e8a95b
Remove flow_* attributes in actor compiler
2019-08-16 09:24:57 -07:00
Andrew Noyes
e4de4783bf
Add [[flow_allow_discard]]
2019-08-16 09:24:57 -07:00
Andrew Noyes
971b857c51
Avoid using new c sharp features
2019-08-16 09:24:57 -07:00
Andrew Noyes
a8cdcff0c2
Change --disable-actor-without-wait-warning to --disable-diagnostics
...
We probably just want to disable all actor diagnostics for the flow test
files.
Also add --generate-probes to the help text
2019-08-16 09:24:57 -07:00
Andrew Noyes
4ebb325ff9
Make cancellable actors [[nodiscard]] by default
2019-08-16 09:24:57 -07:00
Andrew Noyes
be0e4e2438
Teach actorcompiler about C++ attributes
2019-08-16 09:24:57 -07:00
mpilman
058f21b0fc
fixed merge conflicts
2019-07-30 18:36:10 -07:00
mpilman
aaef83e122
Added first parser functionality for sequences
2019-07-30 18:36:10 -07:00
mpilman
6b8b666ef6
Write object address in probes
2019-07-30 18:36:10 -07:00
mpilman
884628bc0a
moved actor probes to function
2019-07-30 18:36:10 -07:00
mpilman
b7df7f3549
compatability with older cmake versions
2019-07-30 18:36:10 -07:00
mpilman
32d141ad3a
Probes with strings
2019-07-30 18:36:10 -07:00
mpilman
9b96d8c166
a step further to uniqueness
2019-07-30 18:36:10 -07:00
mpilman
497c0aa456
fixed typo
2019-07-30 18:36:10 -07:00
mpilman
8eb06f7ab4
Only generate probes where it is supported
2019-07-30 18:36:10 -07:00
mpilman
13e101c441
Added d-trace probes for actors
2019-07-30 18:36:10 -07:00
A.J. Beamon
9272a41e5f
Merge pull request #1146 from atn34/fix-actor-warning
...
Fix actor warning for cmake build
2019-02-13 11:01:37 -08:00
Andrew Noyes
1ea58c1e5e
Actually change name of flag
2019-02-13 10:44:58 -08:00
Andrew Noyes
3a38bff8ee
Use DISABLE_ACTOR_WITHOUT_WAIT_WARNING consistently
2019-02-13 10:30:35 -08:00
Andrew Noyes
067a445e06
Replace unused _ variables with wait(success(...))
2019-02-12 17:30:30 -08:00
Andrew Noyes
f257cca1bc
Update Void _ = wait(...)
occurrences
2019-02-12 17:30:30 -08:00
Andrew Noyes
df3454114e
Add TODO
2019-02-12 11:03:08 -08:00
Andrew Noyes
8b0e593f83
Add --disable-actor-without-wait-error flag to actorcompiler
2019-02-12 11:01:17 -08:00
Andrew Noyes
d348846a10
Introduce ErrorMessagePolicy class
...
This encapsulates logic for how to report particular error messages.
So far only used for reporting an actor not containing a wait statement,
as this warning should be suppressed in certain contexts.
We could change other error messages to use this class, but since they
don't have any logic I don't think the extra indirection is appropriate.
2019-02-12 11:01:17 -08:00
Andrew Noyes
6051c8027b
Allow osx tooling to understand c sharp
...
After this change I am able to load foundationdb.sln with vscode and get
features like jump to definition and autocomplete.
IntermediateOutputPath will now use a default value.
2019-02-12 11:00:24 -08:00
mpilman
fa6f43b1f3
Added missing 'static' for actor fwd declarations
...
There is a bug in the code that when an ACTOR forward
declaration is static, the static keyword doesn't get
generated in the forward declaration. This commit fixes
that.
2019-02-01 14:44:47 -08:00
mpilman
01730cc461
Allow forward declarations to be actors
...
If an actor is forward declared it is kind of
awkward as the signatures don't fit. For example:
Future<Void> foo(int const& bar);
is the correct forward declaration for this actor:
ACTOR Future<Void> foo(int bar);
This also means that a lot of tooling (like rtags/cquery etc)
doesn't work correctly. It will show errors that the function
calls are ambiguous and "find references"-features typically
don't work.
Allowing to do this in the actor compiler is the first step. The
next will be to refactor all forward declarations.
2019-01-29 10:57:54 -08:00
Evan Tschannen
3922e477a5
Merge branch 'release-6.0'
...
# Conflicts:
# documentation/sphinx/source/release-notes.rst
# fdbclient/ManagementAPI.actor.cpp
# fdbserver/ClusterController.actor.cpp
# fdbserver/DataDistribution.actor.cpp
# fdbserver/LogSystemDiskQueueAdapter.actor.cpp
# fdbserver/SimulatedCluster.actor.cpp
# fdbserver/TLogServer.actor.cpp
2018-10-03 16:57:18 -07:00
A.J. Beamon
4773b788e9
Fix line endings
2018-09-10 09:44:47 -07:00
A.J. Beamon
e918ba7a4f
Fix actor compiler warnings related to TEST_CASEs not having wait() statements and the DescrCompiler having unused variables.
2018-09-06 16:14:04 -07:00
Alex Miller
0b4c06169b
Convert tabs to spaces in ActorParser
2018-08-14 15:50:26 -07:00
Alex Miller
63b1e85338
Ban Void _ = wait(...)
constructions, and require just wait(...)
.
...
There's never any reason to save the value of a Void return, and it's
the easiest source of redefined variable bugs that will creep back in
over time. So just `wait(...)`, it's cleaner that way.
2018-08-14 15:50:26 -07:00
Alex Miller
1901be1e63
Allow wait()
instead of Void _ = wait()
.
2018-08-14 15:49:47 -07:00
A.J. Beamon
6f941a89b4
Fix bug in actor compiler that would cause multi-line comments to be marked with the wrong line numbers.
2018-06-13 10:15:20 -07:00
Alec Grieser
0bae9880f1
remove trailing whitespace from our copyright headers ; fixed formatting of python setup.py
2018-02-21 10:25:11 -08:00
FDB Dev Team
a674cb4ef4
Initial repository commit
2017-05-25 13:48:44 -07:00