aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
| | * | | | Try modifying check in hopes of passing upstream buildPeter Kasting2015-08-271-2/+3
| | | | | |
| | * | | | Review commentsPeter Kasting2015-08-271-2/+1
| | | | | |
| | * | | | Refine check for unordered_{map|set} availability.Peter Kasting2015-08-271-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's not enough to check for C++11 language support, as it's possible for projects to enable C++11 language and library features independently (e.g. Chromium currently does this). Instead, explicitly check the library version to see if it is recent enough to include unordered_{map|set}.
| * | | | | Don't assume char is signed.Brian Silverman2015-09-081-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It isn't always, which causes problems when trying to put negative values into the array with C++11.
| * | | | | Use TEST_TMPDIR for writing temporary files if it's set.Brian Silverman2015-09-081-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | Bazel expects all tests to do this.
| * | | | | Rename 'BYTE_SIZE' macro to 'GOOGLE_PROTOBUF_BYTE_SIZE'kbinani2015-09-041-12/+12
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | Xcode raises warning that says "'BYTE_SIZE' macro redefined". The original 'BYTE_SIZE' macro definition is here, for example: '/Applications/Xcode/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/mach/vm_param.h'
* / | | | Down-integrate from google internal.Jisi Liu2015-10-0562-359/+1325
|/ / / /
* | | | Merge remote-tracking branch 'origin/master' into beta-1Feng Xiao2015-08-299-96/+109
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Conflicts: src/google/protobuf/extension_set.h
| * \ \ \ Merge pull request #770 from pkasting/string_spaceFeng Xiao2015-08-284-19/+14
| |\ \ \ \ | | | | | | | | | | | | Move StringSpaceUsedIncludingSelf to lite library.
| | * | | | Move StringSpaceUsedIncludingSelf to lite library.Peter Kasting2015-08-274-19/+14
| | | |/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This came up because Chromium downstream modifies the lite library in a way that requires this function, but I'm upstreaming it because based on the comments in repeated_field.h, this ought to allow resolution of an existing hack. I don't know enough about the protobuf code to feel confident trying to resolve this hack myself, so I've merely updated the TODO comments.
| * | | | Merge pull request #771 from pkasting/static_init_1Feng Xiao2015-08-282-63/+78
| |\ \ \ \ | | | | | | | | | | | | Remove a static initializer by removing a global of non-POD type.
| | * | | | Remove a static initializer by removing a global of non-POD type.Peter Kasting2015-08-272-63/+78
| | | |/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are banned by the Google style guide, and Chromium has a hard no-new-static-initializers policy preventing updating to a new version of libprotobuf unless this is resolved. This is the first such change, I'll need to make at least one more in the future. Luckily, the protobuf source tree already has an alternative to static initializers in once.h; use that machinery instead. I defined everything in the .cc file in a blob to replace the old implementation rather than matching the .h layout precisely; let me know if a different ordering is preferred. I also eliminated the macro that used to be used here as spelling everything out only takes one additional line, and the macro didn't actually handle all details of using a particular member variable, just the declaration, so it felt a bit error-prone.
| * | | | Merge pull request #569 from redivo/masterFeng Xiao2015-08-281-5/+5
| |\ \ \ \ | | |_|_|/ | |/| | | Fix GOOGLE_PROTOBUF_ATOMICOPS_ERROR syntax error
| | * | | Fix GOOGLE_PROTOBUF_ATOMICOPS_ERROR syntax errorGeorge Redivo2015-07-061-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's not possible to define "#error" inside a define. It causes 'error: stray ‘#’ in program' compilation error. Now the define GOOGLE_PROTOBUF_ATOMICOPS_ERROR is the error message and it's used along the code together "#error".
| * | | | Merge pull request #768 from pkasting/timeFeng Xiao2015-08-281-1/+0
| |\ \ \ \ | | |_|/ / | |/| | | Delete kNanosPerSecond from time.cc.
| | * | | Delete kNanosPerSecond from time.cc.Peter Kasting2015-08-271-1/+0
| | | |/ | | |/| | | | | | | | | This variable is unused, and thus triggers a build warning on MSVC.
| * | | Merge pull request #746 from zmodem/fix_predict_macros2Feng Xiao2015-08-271-2/+2
| |\ \ \ | | | | | | | | | | Fix the no-op definitions of GOOGLE_PREDICT_{TRUE,FALSE}
| | * | | Fix the no-op definitions of GOOGLE_PREDICT_{TRUE,FALSE}Hans Wennborg2015-08-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Updating to the current protobuf version caused the following build errors in Chromium when using Clang on Windows: ..\..\third_party\protobuf\src\google/protobuf/stubs/fastmem.h(67,43) : error: equality comparison with extraneous parentheses [-Werror,-Wparentheses-equality] if (GOOGLE_PREDICT_FALSE(n_rounded_down == 0)) { // n <= 7 ~~~~~~~~~~~~~~~^~~~ The problem is that on Windows, GOOGLE_PREDICT_FALSE is #defined to nothing, so the code expands to 'if ((n_rounded_down == 0))', which Clang warns about. Clang would not have warned if the extra parentheses came from the macro, but in this case they don't because the macro is just dropped. Fix this by making the macros behave as an identity function instead of just getting dropped. This is closer to what these macros look like in stubs/port.h internally.
| * | | | Avoid #including system headers from inside a namespace.Peter Kasting2015-08-271-6/+10
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | port.h #includes various headers in order to define byteswap functions, but it currently does so from inside the google::protobuf namespace. This can cause bizarre symbol conflicts and other build errors as these headers' contents are then included inside this namespace. Instead, #include the relevant headers above the namespace declarations.
* | | | Update generated file.Feng Xiao2015-08-261-1/+0
| | | |
* | | | Merge pull request #750 from TeBoring/beta-1Paul Yang2015-08-261-0/+1
|\ \ \ \ | | | | | | | | | | Fix bugs for objectivec
| * | | | Fix bugs for objectivecTeBoring2015-08-261-0/+1
| | | | |
* | | | | Add a TODO to clean-up the LITTLE_ENDIAN macro.Feng Xiao2015-08-261-0/+3
| | | | |
* | | | | Assume LITTLE_ENDIAN for windows build.Feng Xiao2015-08-261-2/+2
| | | | |
* | | | | Remove an unused typedef.Feng Xiao2015-08-261-6/+0
| | | | |
* | | | | Merge remote-tracking branch 'origin/master' into beta-1Feng Xiao2015-08-262-1/+14
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Merge pull request #709 from xfxyjwf/map_bugFeng Xiao2015-08-262-1/+14
| |\ \ \ \ | | |_|/ / | |/| | | Fix JSON map fields parsing.
| | * | | Fix map fields parsing.Feng Xiao2015-08-112-1/+14
| | | | | | | | | | | | | | | | | | | | Change-Id: If61e16cea84492474a71bbfe985131ec980b0b0a
* | | | | add static cast to silence signedness comparison warningJan Tattermusch2015-08-261-1/+1
| | | | |
* | | | | Fix cmake build on linux.Feng Xiao2015-08-251-2/+4
| |_|/ / |/| | |
* | | | Merge pull request #742 from xfxyjwf/c11_compileFeng Xiao2015-08-252-3/+3
|\ \ \ \ | | | | | | | | | | Fix compile issues with -std=c++11
| * | | | Fix compile issues with -std=c++11Feng Xiao2015-08-252-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This compiles with -std=c++11: message Foo { map<string, Foo> value = 1; } This does not compile: message Foo { map<int32, Foo> value = 1; } Needs to dig more into the underlying issue.
* | | | | Merge pull request #741 from pherl/beta-1Jisi Liu2015-08-254-52/+72
|\ \ \ \ \ | | | | | | | | | | | | fix "memory leaks" in protostream-object files.
| * | | | | fix "memory leaks" in protostream-object files.Jisi Liu2015-08-254-52/+72
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I0aca56802d974cb03cb89c1a294f37068b5b9758
* | | | | | Merge pull request #740 from pherl/beta-1Jisi Liu2015-08-251-5/+5
|\| | | | | | |/ / / / |/| | | | Fix commandline interface file under heapcheck.
| * | | | Fix commandline interface file under heapcheck.Jisi Liu2015-08-251-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The internal down-integrate script probably does not handle the top level macros well. Moved the macro inside of the namespace declrations to avoid down-integrate errors in the future. Change-Id: I3790357f36b0204a2a26577805192a3a1e989df8
* | | | | Merge remote-tracking branch 'origin/master' into beta-1Feng Xiao2015-08-255-20/+21
|\ \ \ \ \ | |/ / / / |/| / / / | |/ / /
| * | | Merge pull request #726 from DouglasHeriot/msvc-noinlineFeng Xiao2015-08-256-23/+31
| |\ \ \ | | | | | | | | | | Define GOOGLE_ATTRIBUTE_NOINLINE for MSVC. Workaround for VS2015 Release build compiler bug
| | * | | Define GOOGLE_ATTRIBUTE_NOINLINE for MSVC. Workaround for VS2015 Release ↵Douglas Heriot2015-08-226-23/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | build compiler bug. See issue #240 - MSVC in VS2015 seems to inline a function it shouldn't. My original workaround was to disable inlining for the whole file, but I found a way to do it on just this specific function using __declspec(noinline). Unfortunately __declspec has to go at the start of the function declaration, while __attribute in GCC can go either before or after. I had to move lots of GOOGLE_ATTRIBUTE_NOLINE to make it compile. I have not yet tested this change with GCC. Will there be other side effects of defining this, given it wasn't previously? I also noticed a few functions marked with both the 'inline' keyword, and GOOGLE_ATTRIBUTE_NOINLINE - huh? Is there an explanation for this, or is it an oversight?
| * | | | Change where we rename Descriptor.cs to DescriptorProtoFile.cs.Jon Skeet2015-08-252-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We now do this in protoc instead of the generation simpler. Benefits: - Generation script is simpler - Detection is simpler as we now only need to care about one filename - The embedded descriptor knows itself as "google/protobuf/descriptor.proto" avoiding dependency issues This PR also makes the "invalid dependency" exception clearer in terms of expected and actual dependencies.
| * | | | Remove Python 2.5 cruftTamir Duberstein2015-08-221-14/+6
| |/ / /
* | | | Merge pull request #734 from TeBoring/beta-1Feng Xiao2015-08-2519-61/+110
|\ \ \ \ | | | | | | | | | | Fix bugs on windows
| * | | | Fix bugs on windowsBo Yang2015-08-2532-437/+503
| | | | |
* | | | | Merge branch 'beta-1' of github.com:google/protobuf into manual-mergeJisi Liu2015-08-252-2/+11
|\ \ \ \ \
| * | | | | Make the PARSER @Deprecated public.Feng Xiao2015-08-252-2/+11
| |/ / / / | | | | | | | | | | | | | | | (cherry-picking an intenral change).
* | | | | Update descriptor protos.Jisi Liu2015-08-2513-376/+393
| | | | | | | | | | | | | | | | | | | | Change-Id: I74a73d3135ec1e0e4d52d741a77456b8e55f038f
* | | | | Merge branch 'beta-1' of github.com:google/protobuf into manual-mergeJisi Liu2015-08-25171-2737/+6924
|\| | | | | | | | | | | | | | | | | | | Change-Id: I83a93fdb119a643fbc884e6ec3624493f6270370
| * | | | Cherry-pick Java utf8 change.Feng Xiao2015-08-243-8/+5
| | | | |
| * | | | Down-integrate from internal code base.Feng Xiao2015-08-2311-112/+418
| | | | |
| * | | | Down-integrate from google3.Feng Xiao2015-08-22168-2618/+6502
| | | | |