msvc packed attribute translation
authorElizabeth Smith <elizabeths@fb.com>
Wed, 23 Apr 2014 20:02:51 +0000 (13:02 -0700)
committerDave Watson <davejwatson@fb.com>
Tue, 20 May 2014 19:53:49 +0000 (12:53 -0700)
commitaafd8ff9151615a8de09682d41d1c29966e4c8fe
tree4f829cb924e896d354ccb2e28f79eb526bcc4da1
parentb7ccdf65e931201fd160327976c8ec42b5a6c5b3
msvc packed attribute translation

Summary:
Provide translations for gcc packed

MSVC has a very very ugly syntax for packing using pragmas which is very different from the gcc attribute
this makes it very hard to macro around, but lots of ifdefs are also painful - cleanest of the hackery is to simply have push, pop, and attribute macros for packed that define properly depending on the compiler

Test Plan: fbmake runtests

Reviewed By: njormrod@fb.com

FB internal diff: D1279966
folly/Bits.h
folly/Portability.h
folly/io/RecordIO-inl.h
folly/small_vector.h
folly/test/PackedSyncPtrTest.cpp
folly/test/SmallLocksTest.cpp