AIDL previously supported "rpc" and "flatten" types, which are not used
anywhere in the Android tree. This patch removes them, which significantly cuts
down code and complexity.
Bug: 23517584
Test: Rebuilt AOSP tree against new version
Change-Id: I6cf38d43c1ce109ffca987cc14520945aa22431f
Signed-off-by: Casey Dahlin <sadmac@google.com>
This test sets up an artificial hierarchy of .aidl files, then
checks that the generated code contains a substring that we
know to be correct. This isn't a very good unittest, but it does
validate that the whole flow works start to finish.
Bug: 23516947
Test: compiles, unit tests pass.
Change-Id: I931b7659731b05440040623e12596669604cef3a
Compile aidl's logic into a static library that can be
linked against both the unittest binary and the executable. Validate
that this is working by writing a basic unittest against options
parsing.
Provide default values for Options struct members. These were
previously taking on values according to the the bits in the memory
allocated to hold them for preprocessed inputs.
Bug: 23516947
Change-Id: Ib57cd7f473995f7851d788deac39f9c4d9018e8f
Test: compiles and unittests pass
Turn all warnings to errors, with special cases for places where
yacc forces us to be lenient. Remove one variable with 0 references
elsewhere in the code.
These flags are confined to be clang only because the Windows SDK build
is using an older compiler that does not understand these flags.
Change-Id: I6407bd331c25b8845bde46e9a917bce1d6857bd8
This reverts commit eea2353a3427f7d157c46e24ab6aba1378e16c2e.
This seems to have broken the build because whatever compiler the builder is using doesn't understand the same "turn off this warning" flags as my local host's compiler.
Change-Id: Ic68b7065b161a5ae683b7082c67147835833e0fa
This separates the main() entry point from the functionality we're
hoping to test. While here, redo the header guards to be consistent
accross the codebae.
Bug: 23516947
Change-Id: I61666126bdba0941f14bd0f031caaa30367b864a
Test: Compiles
Turn all warnings to errors, with special cases for places where
yacc forces us to be lenient. Remove one variable with 0 references
elsewhere in the code.
Change-Id: Ia7819795eb162e9c77d215088aee4c45bd87c1af
It is good practice to not include the whole std:: namespace into
the global namespace. This is doubly true in headers.
TEST=aidl compiles
Change-Id: I910ca8082f61cce4f23f8564b8a12c2828b75b3c
Using std::move here prevents the compiler from performing copy
elision.
Change-Id: I80e98229359bdff5873be602d85ae6c502c67c1d
(cherry picked from commit 986d3f2eee7bbfbb588aa0e26f250d4016769ff2)
With a set of resources with the following configurations:
()
(land)
the regression caused any resources that needed to be versioned in configuration () to be lost.
Bug:23038206
Change-Id: I2f1b0313fb780ac241e7aaa487cb37dfb79c36aa
We have been seeing crashes on the Theme editor related to an assertion
on getDelegate when the object does not exist
(http://b.android.com/181951).
When debugging, the crash was happening without seeing a previous call
to removeJavaReference. This seems to completely remove that crash.
Since the DelegateManager can be called at least from two threads
(main thread and the finalizer), it should be thread safe.
Bug: http://b.android.com/181951
Change-Id: I1b28f863ff198f8592f170a98f9de391b2ac3ea2
Use ICU's implementation of SimpleDateFormat in LayoutLib. The format
patterns used are not supported by java.text.SimpleDateFormat.
The change required adding a mechanism for promoting visibility of
fields in the framework in the create tool.
TODO: Add additional tests in the create tool for this new
functionality.
Change-Id: Id0f4be41f9731c42a28919c32cc5ef271a656982
In LayoutLib the default locale should always be the locale set the
rendering params. This change replaces all calls to Locale.getDefault in
the framework with calls to AndroidLocale.getDefault() which tries to
find the locale from the current context, but falls back to the original
call.
Change-Id: I496b35dcfc17fd61fedee21c7495541ab870b1fc
The XML editor already warns about the empty strings in places where an
int value is required. There's no need to show another warning for it in
the rendering panel. Also, the rendering might have also failed when the
empty string is encountered. Try an continue the rendering, because no
rendering state is really bad.
Change-Id: I85106f37e4462f237e85f0b065b4ce8a4bfabf4d