Floating point and double precision have precision issues.
I am not suggesting that we use IEEE floating point here, but something that could be put together to ensure the accuracy required for making this work. Yes, I'm aware of the limitation of the standard binary floating point and how it can impact precision. It would have to be something very, very different.
BTW, I don't think that building a data structure to hold this kind of data would be all that inefficient, as for most "normal" transactions there wouldn't be more than a few digits of accuracy needed in the "mantissa". There could be some problems if those involved in trades insist upon 20-30 digits in the mantissa.... at which time that is all information which needs to be stored and would still be a problem if we needed more digits of accuracy.
Variable sized data structures exist for things like UTF-8, that in theory holds potential values for a unicode character with a number in the trillions, but only occupies a single 8-bit byte for each ordinary Latin-1 characters. It is something like this that I'm talking about for storing this information, that would only require a single bit in the current implementation that could flag between an "extended" data structure and more ordinary transactions that are currently happening. I am quite certain that there is a bit that until now has not been used and would not have broken nor will break any current clients. All I'm proposing is that this bit be officially marked as "reserved" at the moment for future expansion so it doesn't break the network if that day ever comes where we may have to come up with some kind of alternative data storing procedure.
And yes, UTF-8 is inefficient for seldom used Chinese characters such as family names and ancient words not commonly used even within Chinese culture (i.e. Unicode points well above 65k). That should be an exception rather than the rule, and if the pressing need is in place for very high precision data.
The need for growing this will come when the value of the minimum currency unit starts to become valuable enough that a desire to have a fractional unit will come up to deal with micro transactions.... where that would also have the value of what is roughly about a cent on a U.S. Dollar currently. We've already seen massive deflation relative to the U.S. Dollar and Euros already, and the question is if 0.00000001 bitcoins would ever be worth a dollar on the standard bitcoin exchanges? Of course I don't know what would be more shocking if that happens.... the value of a dollar or a bitcoin?